7.14

本文提供了五个C语言编程实例,包括统计数字中9的个数、筛选圈中剩余编号、排序五个浮点数、打印100内素数及查找1000内完数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.通过编程实现,统计1~n有多少个9
#include <stdio.h>
int main()
{
int n,m,k;
int i,j = 0;
printf("enter n:");
scanf("%d",&n);
for(i = 1; i <= n; i++)
{
        k = i;
        while(k)
    {
if(k == 9)
{
j++;
}
else
{
                m = k%10;
        if(m == 9)
    {
    j++;
    }
}
k/=10;
    }
}
printf("1 - %d have %d 9.\n",n,j);
     return 0;
}
2.有n个人围成一圈,顺序排号,从第一个开始报数(从1到3报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位
#include<stdio.h>
int main()
{
    int a[1000] = {0};
    int s = 0;
    int sum = 0;
    int i = 0;
    int n = 0;
     printf("please input number:\n");
    scanf("%d",&n);                         
    for(i = 0;i <= n;i++)
    {
        a[i] = 1;
    }                                           
    for(i = 1;i <= n;i++)
    {
        s = s + a[i];                           
        if(s == 3)
        {   
            s = 0;
            a[i] = 0;
            sum++;
        }
        if(i == n)                              
        {
            i = 0;
        }
        if(sum == n- 1)
        {
            for(i = 1;i <= n;i++)              
            {   
                if(a[i] == 1)
                {
                    printf("the last one is %d\n",i);
                }
            }
            break;
        }
    }
    return 0;
}
3.输入5个数(含负数、小数)将它们按由小到大的顺序排列起来
#include <stdio.h>
int main()

float  a[5];
int i,j;
float temp;
printf("please input 5 numbers: ");
for(i = 0;i < 5; i++)
{
scanf("%f",&a[i]);
}
for(i = 0;i < 5;i++)
{
for(j = i+1;j < 5;j++)
{
if(a[j] < a[i])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
printf("the result is:\n");
for(i = 0;i < 5;i++)
{
printf("%g ",a[i]);
}
printf("\n");
return 0;
}
4.求100以内的素数,全部打印出来
#include<stdio.h>
void Prime(void)
{
int i = 0;
int j = 0;
int flag = 0;
printf ("Prime numbers are : \n");
for (i = 2; i <= 100; i++)
{
for (j = 2; j < i; j++)
{
if (i % j == 0)
{
flag = 1;
break;
}
}
if (flag != 1)
{
printf ("%d  ", i);
}
flag = 0;
}
}
int main()
{
Prime();
printf("\n");
return 0;
}
5.一个数如果恰好等于它的因子之和,这个数被成为”完数”,例如:6=1+2+3.请编程找出1000以内的完数
#include <stdio.h>
int wanshu(int n);
int main()
{
int m;
printf("请输入一个数:\n");
scanf("%d",&m);
ptintf("这个数的完数是:\n");
wanshu(m);
printf("\n");
    return 0;
}
int wanshu(int n)
{
int i,j;
int s = 0;
int t = 0;
for(i = 1;i <= n;i++)
{
for(j = 1;j < i;j++)
{
t = i % j;
if (t == 0)
{
s += j;
}
}
if (s == i)
{
printf("%d\t",i);
}
s = 0;
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值