目录

  • 前言
  • 1、求100之内自然数中最大的能被17整除的数。
  • 2、已知a,b,c都是1位整数,求当三位整数abc、cba的和为1333时a、b、c的值。
  • 3、计算并输出200-400之间不能被3整除的整数的和 [200, 400)
  • 4、从键盘输入10个数,统计非负数的个数,并计算非负数的和
  • 5、求125之内自然数中偶数之和。
  • 6、输入5个数,求和并输出。要求编写求和的函数。
  • 7、编程计算1 * 2 * 3+3 * 4 * 5+5 * 6 * 7+...+99 * 100 * 101的值。
  • 8、编写程序,将用户输入的字符串中所有的字符a用*代替,然后输出。
  • 9、编写程序,将一个一维数组的元素逆序存放并输出。例如,原顺序为1,2,3,4,5,逆序后为5,4,3,2,1。
  • 10、求3行3列矩阵a[3][3]={1,2,3,4,5,6,7,8,9}非对角线上元素之和。
  • 11、编程判断输入的整数的正负性和奇偶性。如果为正数,输出z;如果为负数,输出f;如果为偶数,输出o;如果为奇数,输出j
  • 12、计算并输出1-200之间不能被5整除的整数的和。
  • 13、从键盘输入n和a的值,计算a+aa+aaa+...+aa...a(n个a)的值。
  • 14、输入5个数,求它们中最大值和平均值并输出。
  • 15、输出所有200-400之间能被3整除且个位数字为6的整数。
  • 16、编写程序,将用户输入的字符串中所有的字符a去掉,然后输出剩余的字符。
  • 17、计算并输出200-400之间不能被7整除的整数的和。
  • 18、计算并输出200-400之间不能被5整除的整数的和。
  • 19、从键盘输入10个数,统计非正数的个数,并计算非正数的和。
  • 20、输入一串字符,将其中的大写字母变成对应的小写字母并输出。
  • 21、打印所有的水仙花数。所谓水仙花数是指一个三位数,其各位数字的立方和等于该数。例如,153就是一个水仙花数,因为153=1*1*1+5*5*5+3*3*3。
  • 22、一个皮球从100米高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。求当它第10次落地时,共经过了多少米,第10次反弹多高?
  • 23、输出所有0-200之间能被3整除且个位数字为6的整数。
  • 24、输入一个正整数,输出它的阶乘。
  • 25、编写程序,判断从键盘输入的字符中数字字符的个数、大写字母的个数、小写字母的个数及其它字符的个数,以*作为字符输入结束标志。
  • 26、编写程序,使用循环结构输出下列图形:
  • 27、输入一串字符,逆序输出。要求使用数组实现。
  • 28、求1-1/2+1/3-1/4+...+1/99-1/100的值。
  • 29、输入3个学生4门课的成绩{(60,70,65,75),(75,80,75,90),(95,75,90,65)},计算每个学生的总分和平均成绩并输出,结果保留一位小数。
  • 30、求两个正整数的最大公约数。
  • 31、求100之内自然数中奇数之和。
  • 32、输出所有200-400之间能被3整除且个位数字为7的整数
  • 33、编程计算1 * 2 * 3+4 * 5 * 6+...+97 * 98 * 99的值
  • 34、输入n的值,计算并输出1 * 1+2 * 2+3 * 3+4 * 4+5 * 5+...+n * n的值。要求编写函数f求平方。
  • 35、计算并输出1-200之间不能被3整除的整数的和。
  • 36、输入一个华氏温度,输出摄氏温度,计算公式为c=5/9*(F-32)。要求结果保留两位小数。
  • 37、输入任意三个数,按从大到小的顺序输出
  • 38、用1元人民币兑换5分、2分、1分的硬币共50枚,每种硬币至少一枚,问共有多少种兑换方案?输出每一种方案中三种硬币的数量
  • 39、从键盘输入圆的半径,计算并输出圆面积与周长,要求结果保留两位小数。
  • 40、从键盘输入一个字符串,再输入两个正整数m和n,输出字符串中从m开始,连续n个字符。例如,输入abcdefg,2,3,输出bcd。
  • 41、输入一个不多于5位的正整数,判断它是几位数,并逆序输出各位数字
  • 42、输出Fibonacci数列的前40项
  • 43、判断某一年是否是闰年
  • 44、起泡法(选择法)对十个数排序
  • 45、判断某个数是否为素数.
  • 46、编程计算1!+2!+3!+…+10的值。
  • 47、求以下数列前十五项的和:2/1,3/2,5/3,8/5,13/8,21/13…。
  • 48、从键盘输入圆柱体高与底面半径,计算并输出圆柱体表面积与体积,要求结果保留两位小数。
  • 49、从键盘输入一个十进制整型数据,计算并输出其各位上数字之和(忽略正负号)。例如,输入1234,输出10;输入-1234,输出10。
  • 50、已知银行定期存款利率为r=2.25%,输入存款本金x、存款年数n,输出本利之和y=x(1+r)(1+r)...(1+r),共n个(1+r)。
  • 51、编程判断输入的字符串是否为“回文”。所谓“回文”是指顺读和倒读都一样,如abcba。
  • 52、编写程序,将用户输入的字符串中删除所有的数字,然后输出剩余的字符

前言

总题数量52道,其中有很多相似的题目,用于前期学习练手还是挺不错的哦。我提供的解法不一定是最优的,只是提供一种解法,不提供解法思路。如有错误请私聊或者评论联系我进行更正!

1、求100之内自然数中最大的能被17整除的数。

方法一:

#include <stdio.h>#define NUM 17int main()
{int i = 0;for(i = 100; 0 != i % NUM; i--){;}printf("100之内自然数中最大能被17整除的数为:%d\n", i);return 0;
}


方法二:

int main()
{printf("%d\n", 100 / 17 * 17);return 0;
}

2、已知a,b,c都是1位整数,求当三位整数abc、cba的和为1333时a、b、c的值。

#include <stdio.h>
int main()
{int i = 0;//循环体的计数器int j = 0;int k = 0;for(i = 0; i < 10; i++){for(j = 0; j < 10; j++){for(k = 0; k < 10; k++){if(1333 == i * 100 + j * 10 + k + k * 100 + j * 10 + i){printf("a = %d, b = %d, c = %d\n", i, j, k);}}}}return 0;
}

3、计算并输出200-400之间不能被3整除的整数的和 [200, 400)

#include <stdio.h>int main()
{int sum = 0;int i = 0;for (i = 200; i < 400; i++){if (0 != i % 3){sum += i;//printf("i = %d\n", i);}}printf("[200,400)之间不能被3整除的整数之和为:%d\n", sum);return 0;
}

4、从键盘输入10个数,统计非负数的个数,并计算非负数的和

#include <stdio.h>
int main()
{int number = 0;int count = 0;int sum = 0;int i = 0;printf("请输入十个整型数字:");for (i = 0; i < 10; i++){scanf("%d", &number);if (number > 0){count++;sum += number;}}printf("非负数的个数为:%d, 非负数的和为:%d\n", count, sum);return 0;
}

5、求125之内自然数中偶数之和。

#include <stdio.h>
#define NUM 125
int main()
{int i = 0;int sum = 0;for (i = 1; i < NUM; i++){if (0 == i % 2){//printf("i = %d\n", i);sum += i;}}printf("125之内的偶数之和为:%d\n", sum);return 0;
}

6、输入5个数,求和并输出。要求编写求和的函数。

#include <stdio.h>
#define COUNT 5
int sum();int main()
{int num = sum();printf("和为:%d\n", num);return 0;
}int sum()
{int number = 0;int i = 0;int s = 0;for (i = 0; i < COUNT; i++){scanf("%d", &number);s += number;}return s;
}

7、编程计算1 * 2 * 3+3 * 4 * 5+5 * 6 * 7+…+99 * 100 * 101的值。

#include <stdio.h>int main()
{int sum = 0;int i = 0;for (i = 1; i < 100; i += 2){sum += i * (i + 1) * (i + 2);}printf("和为:%d\n", sum);return 0;
}

8、编写程序,将用户输入的字符串中所有的字符a用*代替,然后输出。

#include <stdio.h>
int main()
{char ch = ' ';scanf("%c", &ch);while('\n' != ch){if('a' == ch){ch = '*';}printf("%c", ch);scanf("%c", &ch);}printf("\n");return 0;
}

9、编写程序,将一个一维数组的元素逆序存放并输出。例如,原顺序为1,2,3,4,5,逆序后为5,4,3,2,1。

#include <stdio.h>
#include <stdlib.h>
#define SIZEMAX 5int main()
{int* n = (int*)malloc(sizeof(int) * SIZEMAX);int i = 0;for (i = 0; i < SIZEMAX; i++){n[i] = i + 1;}//输出数组原始内容printf("数组原始内容:");for (i = 0; i < SIZEMAX; i++){printf("%d ", n[i]);}//交换for (i = 0; i < SIZEMAX / 2; i++){int tmp = n[i];n[i] = n[SIZEMAX - i - 1];n[SIZEMAX - i - 1] = tmp;}//循环输出printf("\n数组被修改后的内容:");for (i = 0; i < SIZEMAX; i++){printf("%d ", n[i]);}printf("\n");return 0;
}

10、求3行3列矩阵a[3][3]={1,2,3,4,5,6,7,8,9}非对角线上元素之和。

#include <stdio.h>int main()
{int a[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };int sum = 0;int i = 0;int j = 0;for (i = 0; i < 3; i++){for (j = 0; j < 3; j++){if (i != j && 3 != i + j + 1){sum += a[i][j];}}}printf("非对角线之和为:%d\n", sum);return 0;
}

11、编程判断输入的整数的正负性和奇偶性。如果为正数,输出z;如果为负数,输出f;如果为偶数,输出o;如果为奇数,输出j

#include <stdio.h>int main()
{int n = 0;scanf("%d", &n);if(n > 0){printf("z");}else{printf("f");}if(0 == n % 2){printf("o");}else{printf("j");}printf("\n");return 0;
}

12、计算并输出1-200之间不能被5整除的整数的和。

#include <stdio.h>int main()
{int sum = 0;int i = 0;for (i = 1; i < 200; i++){if (0 != i % 5){sum += i;}}printf("和为:%d\n", sum);return 0;
}

13、从键盘输入n和a的值,计算a+aa+aaa+…+aa…a(n个a)的值。

#include <stdio.h>int main()
{int n = 0;int a = 0;long int sum = 0;int i = 0;long int tmp = 0;printf("请输入n的值:");scanf("%d", &n);printf("请输入a的值:");scanf("%d", &a);tmp = a;for(i = 0; i < n; i++){//printf("%d\n", tmp);sum += tmp;tmp = tmp * 10 + a;}printf("结果为:%ld\n", sum);return 0;
}

14、输入5个数,求它们中最大值和平均值并输出。

#include <stdio.h>
#include <limits.h>
int main()
{int max = INT_MIN;double avg = 0;int n[5];int i = 0;int sum = 0;for (i = 0; i < 5; i++){scanf("%d", &n[i]);sum += n[i];if (n[i] > max){max = n[i];}}avg = sum / 5.0;printf("最大值为:%d,平均值为:%.2lf\n", max, avg);return 0;
}

15、输出所有200-400之间能被3整除且个位数字为6的整数。

#include <stdio.h>int main()
{int i = 0;printf("能被3整除且尾数为6的数字有如下:\n");for (i = 200; i < 400; i++){if (0 == i % 3 && 6 == i % 10){printf("%d ", i);}}printf("\n");return 0;
}

16、编写程序,将用户输入的字符串中所有的字符a去掉,然后输出剩余的字符。

#include <stdio.h>int main()
{char str[100];char tmp[100];int i = 0;int j = 0;fgets(str, 100, stdin);while (str[i] != '\n'){if ('a' != str[i]){tmp[j++] = str[i];}i++;}tmp[j] = '\0';fputs(tmp, stdout);printf("\n");return 0;
}

17、计算并输出200-400之间不能被7整除的整数的和。

#include <stdio.h>
int main()
{int i = 0;int sum = 0;for (i = 200; i < 400; i++){if (0 != i % 7){sum += i;}}printf("和为:%d\n", sum);return 0;
}

18、计算并输出200-400之间不能被5整除的整数的和。

#include <stdio.h>int main()
{int i = 0;int sum = 0;for (i = 200; i < 400; i++){if (0 != i % 5){sum += i;}}printf("和为:%d\n", sum);return 0;
}

19、从键盘输入10个数,统计非正数的个数,并计算非正数的和。

#include <stdio.h>
int main()
{int count = 0;int sum = 0;int number = 0;int i = 0;while (i < 10){scanf("%d", &number);if (number <= 0){count++;sum += number;}i++;}printf("非正数的和为:%d,个数为:%d\n", sum, count);return 0;
}

20、输入一串字符,将其中的大写字母变成对应的小写字母并输出。

#include <ctype.h>
#include <stdio.h>
int main()
{char str[100];int i = 0;fgets(str, 100, stdin);for (i = 0; str[i] != '\n'; i++){putchar(tolower(str[i]));}printf("\n");return 0;
}

21、打印所有的水仙花数。所谓水仙花数是指一个三位数,其各位数字的立方和等于该数。例如,153就是一个水仙花数,因为153=111+555+333。

#include <stdio.h>int main()
{int i = 0;int j = 0;int k = 0;printf("水仙花数:\n");for (i = 1; i < 9; i++){for (j = 0; j < 9; j++){for (k = 0; k < 9; k++){if (i * 100 + j * 10 + k == i * i * i + j * j * j + k * k * k){printf("%d\n", i * 100 + j * 10 + k);}}}}return 0;
}

22、一个皮球从100米高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。求当它第10次落地时,共经过了多少米,第10次反弹多高?

#include <stdio.h>
int main()
{double len = 100;int i = 0;double height = 0;for (i = 0; i < 10; i++){height += len;len = len / 2.0;}printf("共经过了%.2lfm\n", height);printf("第10次反弹的高度为:%.2lfm\n", len);return 0;
}

23、输出所有0-200之间能被3整除且个位数字为6的整数。

#include <stdio.h>
int main()
{int i = 0;printf("符合要求的有:");for (i = 0; i < 200; i++){if (0 == i % 3 && 6 == i % 10){printf("%d ", i);}}printf("\n");return 0;
}

24、输入一个正整数,输出它的阶乘。

#include <stdio.h>int main()
{int num = 0;int factorial = 1;int i = 1;printf("请输入一个正整数:");if (scanf("%d", &num) && num <= 0){printf("输入非法数据\n");return -1;}for (i = 2; i < num + 1; i++){factorial *= i;}printf("%d的阶乘为%d\n", num, factorial);return 0;
}

25、编写程序,判断从键盘输入的字符中数字字符的个数、大写字母的个数、小写字母的个数及其它字符的个数,以*作为字符输入结束标志。

#include <stdio.h>
#include <stdbool.h>
#include <ctype.h>int main()
{int dcount = 0;//数字int ccount = 0;//大写字母int lcount = 0;//小写字母int rcount = 0;//其他字母int i = 0;char ch = ' ';while (scanf("%c", &ch) && ch != '*'){if (isdigit(ch)){dcount++;}else if (isupper(ch)){ccount++;}else if (islower(ch)){lcount++;}else{rcount++;}i++;}printf("数字个数:%d,大写字母个数:%d,小写字母个数:%d,其他字符个数:%d\n",dcount, ccount, lcount, rcount);return 0;
}

26、编写程序,使用循环结构输出下列图形:

#include <stdio.h>int main()
{int i = 0;int j = 0;for (i = 0; i < 5; i++){for (j = 0; j < 4; j++){printf("* ");}printf("\n\n");}return 0;
}

27、输入一串字符,逆序输出。要求使用数组实现。

#include <stdio.h>
#include <string.h>
int main()
{char str[100];fgets(str, 100, stdin);int len = strlen(str) - 1;while(len >= 0){putchar(str[len]);len--;}printf("\n");return 0;
}

28、求1-1/2+1/3-1/4+…+1/99-1/100的值。

#include <stdio.h>int main()
{int sign = -1;int i = 0;double sum = 0;for (i = 1; i <= 100; i++){sign *= -1;sum += 1.0 / (i * sign);}printf("sum = %lf\n", sum);return 0;
}

29、输入3个学生4门课的成绩{(60,70,65,75),(75,80,75,90),(95,75,90,65)},计算每个学生的总分和平均成绩并输出,结果保留一位小数。

#include <stdio.h>
int main()
{int student[3][4];int i = 0;int j = 0;double result[3][2];//三个同学的总分和平均分double sum = 0;double avg = 0;for (i = 0; i < 3; i++){sum = 0;printf("请输入第%d个同学的四门成绩(中间用空格分隔):", i + 1);for (j = 0; j < 4; j++){scanf("%d", &student[i][j]);sum += student[i][j];}result[i][0] = sum;result[i][1] = sum / 4.0;}for (i = 0; i < 3; i++){printf("第%d位同学的总分为:%.1lf,平均分为:%.1lf\n",i + 1, result[i][0], result[i][1]);}return 0;
}

30、求两个正整数的最大公约数。

#include <stdio.h>int main()
{int a = 0;int b = 0;int tmp = 0;printf("请输入俩个正整数:");if (!(scanf("%d %d", &a, &b) && a > 0 && b > 0)){printf("输入数据非法!\n");return -1;}if (a < b){tmp = a;a = b;b = tmp;}while (a % b != 0){tmp = a % b;a = b;b = tmp;}printf("最大公约数为:%d\n", b);return 0;
}

31、求100之内自然数中奇数之和。

#include <stdio.h>int main()
{int i = 0;int sum = 0;for (i = 0; i < 100; i++){if (1 == i % 2){sum += i;}}printf("100之内的奇数之和为:%d\n", sum);return 0;
}

32、输出所有200-400之间能被3整除且个位数字为7的整数

#include <stdio.h>int main()
{int i = 0;for (i = 200; i < 400; i++){if (0 == i % 3 && 7 == i % 10){printf("%d ", i);}}printf("\n");return 0;
}

33、编程计算1 * 2 * 3+4 * 5 * 6+…+97 * 98 * 99的值

#include <stdio.h>int main()
{int i = 0;int sum = 0;for (i = 1; i < 98; i += 3){sum += i * (i + 1) * (i + 2);}printf("sum = %d\n", sum);return 0;
}

34、输入n的值,计算并输出1 * 1+2 * 2+3 * 3+4 * 4+5 * 5+…+n * n的值。要求编写函数f求平方。

#include <stdio.h>
int f(int num);
int main()
{int n = 0;int i = 0;int sum = 0;printf("请输入n:");scanf("%d", &n);for (i = 0; i <= n; i++){sum += f(i);}printf("sum = %d\n", sum);return 0;
}int f(int num)
{return num * num;
}

35、计算并输出1-200之间不能被3整除的整数的和。

#include <stdio.h>int main()
{int i = 0;int sum = 0;for (i = 1; i < 200; i++){if (0 != i % 3){sum += i;}}printf("sum = %d\n", sum);return 0;
}

36、输入一个华氏温度,输出摄氏温度,计算公式为c=5/9*(F-32)。要求结果保留两位小数。

#include <stdio.h>
int main()
{double fahrenheit = 0;double degree_celsius = 0;printf("请输入一个华氏温度:");scanf("%lf", &fahrenheit);degree_celsius = 5.0 / 9 * (fahrenheit - 32);printf("转换为摄氏温度为:%.2lf\n", degree_celsius);return 0;
}

37、输入任意三个数,按从大到小的顺序输出

#include <stdio.h>int main()
{int a = 0;int b = 0;int c = 0;scanf("%d%d%d", &a, &b, &c);if(a > b){int temp = a;a = b;b = temp;}if(b > c){int temp = b;b = c;c = temp;}if(a > b){int temp = a;a = b;b = temp;}printf("%d %d %d\n", a, b, c);return 0;
}

38、用1元人民币兑换5分、2分、1分的硬币共50枚,每种硬币至少一枚,问共有多少种兑换方案?输出每一种方案中三种硬币的数量

#include <stdio.h>
int main()
{int i = 0;int j = 0;int k = 0;printf("有如下几种情况:\n");for (i = 1; i < 20; i++){for (j = 1; j < 50; j++){for (k = 1; k < 100; k++){if ((100 == i * 5 + j * 2 + k) && (50 == i + j + k)){printf("5分的%d个,2分的%d个,1分的%d个\n", i, j, k);}}}}return 0;
}

39、从键盘输入圆的半径,计算并输出圆面积与周长,要求结果保留两位小数。

#include <stdio.h>
#define PI 3.1415926
int main()
{double r = 0;double per = 0;double area = 0;printf("请输入圆的半径:");scanf("%lf", &r);per = 2 * PI * r;area = PI * r * r;printf("周长为:%.2lf,面积为:%.2lf\n", per, area);return 0;
}

40、从键盘输入一个字符串,再输入两个正整数m和n,输出字符串中从m开始,连续n个字符。例如,输入abcdefg,2,3,输出bcd。


#include <stdio.h>
int main()
{char str[100];int m = 0;int n = 0;printf("请输入一段字符:");fgets(str, 100, stdin);printf("请依次输入m和n的值:");scanf("%d %d", &m, &n);if (m > n){printf("输入数据非法!");return -1;}int i = 0;for (i = m - 1; i <= n; i++){putchar(str[i]);}printf("\n");return 0;
}

41、输入一个不多于5位的正整数,判断它是几位数,并逆序输出各位数字

#include <stdio.h>int main()
{int oldnum = 0;int newnum = 0;int len = 0;int tmp = 0;printf("请输入一个不多于五位的正整数:");scanf("%d", &oldnum);tmp = oldnum;while (tmp != 0){tmp /= 10;len++;}tmp = oldnum;while (tmp != 0){newnum = newnum * 10 + tmp % 10;tmp = tmp / 10;}printf("这是个%d位数,逆序后为:%d\n", len, newnum);return 0;
}

42、输出Fibonacci数列的前40项

#include <stdio.h>int main()
{long long num1 = 0;long long num2 = 1;long long tmp = 0;int i = 0;printf("%lld,", num1);for (i = 2; i < 40; i++){tmp = num1 + num2;num1 = num2;num2 = tmp;printf("%lld,", num1);}printf("\n");return 0;
}

43、判断某一年是否是闰年

#include <stdio.h>int main()
{int year = 0;printf("请输入一个年份:");scanf("%d", &year);if ((0 == year % 4 && 0 != year % 100) || (0 == year % 400)){printf("是闰年!");}else{printf("不是闰年!");}printf("\n");return 0;
}

44、起泡法(选择法)对十个数排序

#include <stdio.h>int main()
{int n[10] = { 3, 2, 5, 6, 7, 67, 14, 1, 8, 13 };int i = 0;int j = 0;for (i = 0; i < 10 - 1; i++){for (j = 0; j < 10 - 1 - i; j++){if (n[j] > n[j + 1]){int tmp = n[j];n[j] = n[j + 1];n[j + 1] = tmp;}}}printf("排序后的结果:\n");for (i = 0; i < 10; i++){printf("%d ", n[i]);}printf("\n");return 0;
}

45、判断某个数是否为素数.

#include <stdio.h>
int main()
{int n = 0;int i = 0;printf("请输入一个数字:");scanf("%d", &n);for (i = 2; i < n; i++){if (0 == n % i){printf("不是素数!\n");return 0;}}printf("是素数!\n");return 0;
}

46、编程计算1!+2!+3!+…+10的值。

#include <stdio.h>int main()
{int i = 0;int sum = 0;int tmp = 1;for (i = 1; i <= 10; i++){tmp = tmp * i;sum += tmp;}printf("sum = %d\n", sum);return 0;
}

47、求以下数列前十五项的和:2/1,3/2,5/3,8/5,13/8,21/13…。

#include <stdio.h>
int main()
{int a1 = 1;int a2 = 1;int b1 = 0;int b2 = 1;int i = 0;double sum = 0;for (i = 0; i < 15; i++){int tmp = a2;a2 = a1 + a2;a1 = tmp;tmp = b2;b2 = b1 + b2;b1 = tmp;sum += a2 / (double)b2;//printf("%lf\n", sum);}printf("sum = %.2lf\n", sum);return 0;
}

48、从键盘输入圆柱体高与底面半径,计算并输出圆柱体表面积与体积,要求结果保留两位小数。

#include <stdio.h>
#define PI 3.1415926
int main()
{double high = 0;double r = 0;double area = 0;double volume = 0;printf("依次输入圆柱体高和地面半径:");scanf("%lf %lf", &high, &r);//area = 2πr2 + 2πrharea = 2 * PI * r * r + 2 * PI * r * high;// 圆柱体的体积=底面积×高=(V=πr²h)volume = PI * r * r * high;printf("圆柱体表面积为:%.2lf, 体积:%.2lf\n", area, volume);return 0;
}

49、从键盘输入一个十进制整型数据,计算并输出其各位上数字之和(忽略正负号)。例如,输入1234,输出10;输入-1234,输出10。

#include <stdio.h>
int main()
{int num = 0;int n = 0;printf("请输入一个数字:");scanf("%d", &num);if (num < 0){num *= -1;}while (num != 0){n += num % 10;num /= 10;}printf("输出:%d\n", n);return 0;
}

50、已知银行定期存款利率为r=2.25%,输入存款本金x、存款年数n,输出本利之和y=x(1+r)(1+r)…(1+r),共n个(1+r)。

#include <stdio.h>
#include <math.h>
int main()
{double rate = 0.0225;int x = 0;int n = 0;double sum = 1;int i = 0;printf("请输入存款本金和存款年数:");scanf("%d %d", &x, &n);for (i = 0; i < n; i++){sum *= (1 + rate);}sum = x * sum;printf("本息和为:%.2lf\n", sum);return 0;
}

51、编程判断输入的字符串是否为“回文”。所谓“回文”是指顺读和倒读都一样,如abcba。

#include <stdio.h>
#include <string.h>
int main()
{char str[100];fgets(str, 100, stdin);int len = strlen(str) - 1;int i = 0;for (i = 0; i < len / 2; i++){if (str[i] != str[len - 1 - i]){break;}}if (i != len / 2){printf("不是回文!\n");}else{printf("是回文!\n");}return 0;
}

52、编写程序,将用户输入的字符串中删除所有的数字,然后输出剩余的字符

#include <stdio.h>
#include <ctype.h>
int main()
{char str[100];char ch = ' ';int i = 0;while (scanf("%c", &ch) && ch != '\n'){if (!isdigit(ch)){str[i++] = ch;}}str[i] = '\0';fputs(str, stdout);printf("\n");return 0;
}

本章完!由于匆忙可能存在一些错误。感谢理解。

C语言练手题(52个小练习)相关推荐

  1. c++ 小游戏_C/C++编程笔记:C语言写推箱子小游戏,大一学习C语言练手项目

    C语言,作为大多数人的第一门编程语言,重要性不言而喻,很多编程习惯,逻辑方式在此时就已经形成了.这个是我在大一学习 C语言 后写的推箱子小游戏,自己的逻辑能力得到了提升,在这里同大家分享这个推箱子小游 ...

  2. 51单片机可以用来练手的60个小设计

    60个51单片机可以用来练手的小设计 最近题主在温习关于51的一些知识,所以自己在网上搜集了一些小设计感觉还可以,大家可以试一试做练手 同样的设计也可以为其他单片机提供一定的设计思路 1 电子秤设计: ...

  3. pyqt5练手项目-抖音小姐姐短视频下载

    pyqt5=Python+ qt,这块的资料现在慢慢多起来了,这里给大家送一个小的demo用来练手. 里面技术点: 1)控件 Pushbutton的使用: 2)pyqt5线程的用法; 3)界面和逻辑分 ...

  4. 【GO语言】实现同步传输系统:局域网内手机和电脑互传文件互发消息。go语言练手项目

    GO语言实现同步传输系统:局域网内手机和电脑互传文件互发消息 项目总览: 一.项目功能展示 1.用手机传输文件到电脑 2.用手机传输图片到电脑 3.用电脑传输文字到手机 4.服务器显示情况,端口信息: ...

  5. 设计九宫格手机输入法(附C++源码)初学C语言练手小项目!

    九宫格输入法是一个很经典的输入法,当你输入每个字母的时候,它会提前显示你想输入什么单词,大大加快了人们的打字速度,尤其是在手机屏幕还比较小的时代. 下面是小编整理好的一套C/C++资料,加小编C/C+ ...

  6. 【C】猜数字,关机小程序,一些分支循环的练手题

    ✨博客主页:心辛向荣 ✨系列专栏:[从0到1,C语言学习] ✨一句短话:你若盛开,蝴蝶自来! ✨博客说明:尽己所能,把每一篇博客写好,帮助自己熟悉所学知识,也希望自己的这些内容可以帮助到一些在学习路上 ...

  7. C语言练手小代码------five

    1 猜数字游戏 功能:可以随机猜一个数字,直到猜对为止,虽然游戏有些无聊,但是可以锻炼我们使用二分查找的思想来快速查找数字.代码已经托管到码云上,点击打开链接.下边附上一张大概的游戏截图: 2.写代码 ...

  8. 值得收藏的25道Python练手题(附详细答案)

    来源丨吾爱破解 题目 1:水仙花数 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI).自恋数.自幂数. ...

  9. NOI 练手题 图像旋转翻转变换

    题目:来源http://noi.openjudge.cn/ch0112/09/ 总时间限制:  1000ms 内存限制:  65536kB 描述 给定m行n列的图像各像素点灰度值,对其依次进行一系列操 ...

  10. 根号分治练手题 西比拉先知系统 题解

    西比拉先知系统 题目描述 [数据范围] n,m,Q≤3×105,y≤1000n,m,Q \leq 3 \times 10^5 , y \leq 1000n,m,Q≤3×105,y≤1000 具体做法与 ...

最新文章

  1. python中的有序字典
  2. Jsp-request与requestScope的区别
  3. Delphi通过IE窗口句柄获取网页接口(IWebBrowser2)
  4. 20211222 AB和BA具有相同的非零特征值;如果A和B均方,且AB=I,那么BA=I,A、B均可逆
  5. java oca_OCA第5部分中的Java难题
  6. 一段js实现复制文本内容到剪切板
  7. 【Python】pyinstaller模块将py文件打包为windows可执行文件exe
  8. 在Eclipse中调试Maven项目
  9. F-Stack实现UDP服务端、客户端,并进行吞吐量测试的实现
  10. Mem系列函数介绍及案例实现
  11. OSI参考模型(1)
  12. C++11的std::declval与decltype
  13. [软件推荐]一款win7 x86 x64都能用的免费内存虚拟盘的小工具——ImDisk
  14. 【简单实用】百度网盘提速方法,不用破解和插件
  15. 前端数据加密(Base64、MD5、AES、RSA)
  16. Lucas-Kanade 算法原理以及应用
  17. Qt多线程使用 和 信号与槽传参 需要注意的问题
  18. 智能电视如何测试软件,智能电视屏幕如何快速识别好坏?教你几招!
  19. 5G科普——CU和DU分离
  20. Java实现文件批量导入导出实例(兼容xls,xlsx)

热门文章

  1. 【C语言】17-预处理指令3-文件包含
  2. pip慢?半分钟解决方案
  3. kno DNS 03 Tips - DNS Cookies
  4. SpringCloud Alibaba之Nacos组件
  5. qt测试代码运行时间
  6. 计算机课用什么做课件,电脑做ppt用什么软件
  7. gis 空间分析 鸟类栖息地选取_鸟类的栖息地选择
  8. QMessageBox::information 自定义按钮
  9. 用Matlab求解高等数学中的问题(求极限,求导)
  10. 我的工程师进阶之路 - 2022更新