我想这样做的代码告诉你(n)整数比(k)输入更大(或更多)的整数。
例如:
input:
4 15
12
6
15
24
output:
2
所以4是用户输入的整数数,15是k数,现在输出的数字是大于k的数字。
我的代码是:
#include<stdio.h>
int main()
{
int n, k, i;
int c, d;
scanf(" %d",&n);
scanf("%d", &k);
for(i=1;i<=n;i++)
{
scanf("%d",&c);
if (c[i]>k)
c[i]=d;
}
printf("%d", d);
return 0;
}
正如你可以看到我的代码糟透了,我不知道如何找到大于k的整数并打印数量,而不是数字本身。任何帮助都是真正的帮助。感谢。
答案 0 :(得分:2)
不确定为什么要尝试将c
作为数组引用。这不是必需的。试试这个:
int main()
{
int n, k, i, c;
int count = 0;
scanf(" %d",&n);
scanf("%d", &k);
for(i=1;i<=n;i++)
{
scanf("%d",&c);
if (c > k)
count++;
}
printf("%d", count);
return 0
}
此外,我会将您的变量重命名为更有意义的内容,例如numEntries
,checkValue
等。
答案 1 :(得分:2)
远不那么优雅的解决方案,但保留了你需要进一步使用的价值.OldProgrammer做得更简单,更漂亮。
int main()
{
int num, s, i, cnt = 0;
printf("please input number of integers and int to compare with\n");
scanf("%d %d", &s, &num);
int arr[s];
for(i = 0; i < s; i++)
{
printf("Please input %d. number", i+1);
scanf("%d", &arr[i]);
}
for(i = 0; i < s; i++)
{
if(arr[i] >= num)
cnt++;
}
//at this point cnt holds the value you need
return 0;
}