C语言编程练习(一)
- 题目:通过编程实现,统计1~n有多少个9
提示:n通过参数传入
#include <stdio.h>
int main()
{
int num,sum = 0,temp;
printf("put in num = \n");
scanf("%d",&num);
getchar();
for(int i = 1; i <= num ; i++ )
{
temp = i;
while(temp != 0)
{
if(temp % 10 == 9)
{
sum += 1;
}
temp = temp / 10;
}
}
printf("sum = %d\n",sum);
return 0;
}
- 题目:有n个人围成一圈,顺序排号,从第一个开始报数(从1到3报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位.
提示:用数组完成
#include <stdio.h>
#include <string.h>
int main()
{
int num_people,i;
printf("put in num_people = \n");
scanf("%d",&num_people);
char term[num_people + 1];
for(i = 0; i < num_people; i++)
{
term[i] = i + 1;
}
term[num_people] = '\0';
i = 0;
int count = 0,temp;
temp = num_people;
while (num_people > 1)
{
if (term[i] != 0)
{
count++;
}
if(count == 3)
{
count = 0;
num_people = num_people - 1;
term[i] = 0;
}
i++;
if(i == temp )
{
i = 0;
}
}
for(i = 0; i <= temp; i++)
{
if(term[i] != 0)
{
printf("The last people = %d\n",term[i]);
}
}
return 0;
}
- 题目:输入5个数(含负数、小数)将它们按由小到大的顺序排列起来
提示:需要排数的数字通过参数传递进来,
例如:输入:./a.out -1 2.1 -3 5 7 输出: -3 -1 2.1 5 7
#include <stdio.h>
int main()
{
double num_1,num_2,num_3,num_4,num_5,temp;
scanf("%lf %lf %lf %lf %lf",&num_1,&num_2,&num_3,&num_4,&num_5);
//printf("%lf %lf %lf",num_1,num_2,num_3);
double term[5];
term[0] = num_1;
term[1] = num_2;
term[2] = num_3;
term[3] = num_4;
term[4] = num_5;
for(int i = 0; i < 4; i++)
{
int temp_i,temp_j;
temp = term[i];
for(int j = 1;j < 5 - i ; j++)
{
if(term[i+j] < temp)
{
temp = term[i+j];
temp_i = i;
temp_j = j;
term[temp_i + temp_j] = term[i];
term[i] = temp;
}
}
}
for(int i = 0;i < 5; i++)
{
printf("num_%d = %f\n",i,term[i]);
}
return 0;
}
- 题目:求100以内的素数,全部打印出来
#include <stdio.h>
int main()
{
for(int i = 1;i <= 100 ; i++)
{
for(int j = 2;j < i ; j++)
{
if(i % j == 0)
{
break;
}
if(j == i - 1)
{
printf("%d\n",i);
}
}
}
return 0;
}
- 题目: 一个数如果恰好等于它的因子之和,这个数被成为”完数”,例如:6=1+2+3.请编程找出1000以内的完数
#include <stdio.h>
int func(int a)
{
int sum = 0;
for(int i = 1; i < a; i++)
{
if(a % i == 0)
{
sum += i;
}
}
return sum;
}
int main()
{
for(int i = 1; i <= 1000; i++)
{
if(i == func(i))
{
printf("%d\n",i);
}
}
return 0;
}
分类:
嵌入式Linux C语言
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程