moyv 2022-08-27 18:49 采纳率: 88.9%
浏览 459
已结题

ignoring return value of ‘scanf’这个怎么回事啊

整数数组有n个元素,将数组元素循环右移p位。假设元素原来为:1,2,3,4,5,6,p为3,则移动后的数组为:456123。

函数接口定义:
void move(int a[], int p);
裁判测试程序样例:
#include <stdio.h>
#define N 10

void move(int a[], int p);

int main()
{
int i,a[N]={1,2,3,4,5,6,7,8,9,10},k;
scanf("%d",&k);
move(a,k);
for(i=0;i<N;i++)
printf("%d ",a[i]);
return 0;
}

/* 请在这里填写答案 */


```c++
void move(int a[],int p)
{
    if(p >= 0 && p <= 10){
        int i;
        int b[10];
        for(i = 0;i < 10;i++){
            b[i] = a[i];
        }
        for(i = 0;i < p;i++){
            a[i] = b[10 - p + i];
        }
        for(i = 0;i < 10-p;i++){
            a[p + i] = b[i];
        }
    }
}

a.c: In function ‘main’:
a.c:10:2: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&k);
  • 写回答

1条回答 默认 最新

  • 快乐鹦鹉 2022-08-27 18:54
    关注

    scanf改为scanf_s

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月6日
  • 已采纳回答 8月29日
  • 创建了问题 8月27日