#include<stdio.h>
int main() {
int x = 0;
double sum = 0;
int number[100] = { 0 };
int cnt = 0;
scanf("%d", &x);
while (x != -1) {
number[cnt] = x;
sum += x;
cnt++;
scanf("%d", &x);
}
if (cnt > 0) {
int i = 0;
double average = sum / cnt;
for (i = 0; i < cnt; i++) {
if (number[i] > average)
printf("number %d: %d\n", i, number[i]);
}
}
}
#include<stdio.h>
int main() {
const int number = 10;//记录数组元素。用const修饰,数组大小规定后不可改变
int count[10] = { 0 };
int i = 0;
int input = 1;
while (input + 1) {//避免输入0时退出,-1 + 1 = 0 刚好满足退出要求
printf("input a number\n");
scanf("%d",&input);
switch (input) {
case 0:
count[0]++;
break;
case 1:
count[1]++;
break;
case 2:
count[2]++;
break;
case 3:
count[3]++;
break;
case 4:
count[4]++;
break;
case 5:
count[5]++;
break;
case 6:
count[6]++;
break;
case 7:
count[7]++;
break;
case 8:
count[8]++;
break;
case 9:
count[9]++;
break;
default:
break;
}
for (i = 0; i < 10; i++)
printf("%d:%d times\n", i, count[i]);
return 0;
}
#include<stdio.h>
int main() {
int count[10] = { 0 };
int i = 0;
int input = 1;
int error = 0;
//更简单的方法:
while (input + 1) {
printf("input a number\n");
scanf("%d", &input);
if (input >= 0 && input <= 9)
count[input]++;
if (input == -1)
break;
}
for (i = 0; i < 10; i++) {
printf("%d:%d times\n", i, count[i]);
}
return 0;
}
#include<stdio.h>
#define N 10 //数组元素个数
int search(int want, int lenth, int* arr) {
int right = lenth - 1;
int left = 0;
int mid = 0;
int ret = 0;
while (right >= left) {
mid = (right + left) / 2;
if (want > arr[mid])
left = mid + 1;
if (want < arr[mid])
right = mid - 1;
if (want == arr[mid]) {
ret = mid;
break;
}
}
if (right < left)
return -1;
else
return ret;
}
int main() {
int arr[N] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
int lenth = sizeof(arr) / sizeof(arr[0]);//计算数组大小
int want = 0;
int index = 0;
printf("input the number you want to search\n");
scanf("%d", &want);
index = search(want, lenth, arr);//切记:数组作为函数参数时,往往必须再用另一个参数来传入数组的大小
if (index == -1)
printf("Can't find!\n");
else
printf("the index of %d: %d\n", want, index);
return 0;
}