您的位置:首页 > 其它

苏嵌学习第6天

2018-08-13 10:10 106 查看

本文参考自: 原文地址

高瑞  2018.7.14

题目:通过编程实现,统计1~n有多少个9

提示:n通过参数传入

#include <stdio.h>

 

void xunhuan(int n)

{

int i;

int temp;

int count = 0;

int b;

 

for(i = 1;i <= n;i++)

{

temp = i;

while(temp != 0)

{

b=temp % 10;      

temp=temp / 10;    

if(b == 9)

{

count++;

}

}

}

 

printf("The result is:%d\n",count);

}

 

int main()

{

int n;

 

printf("Enter a number!\n");

scanf("%d",&n);

 

xunhuan(n);

 

    return 0;

}

 

 

 

题目:有n个人围成一圈,顺序排号,从第一个开始报数(从1到3报数),凡报到3的人退出圈子,问最后最后留下的是原来第几号的那位.

提示:用数组完成

#include<stdio.h> 
int main() 

int a[100]; 
int i,n,p=0,q; 
printf("input number:"); 
scanf("%d",&n); 
q=n; 
for(i=0;i<n;i++) 
a[i]=i+1; 
for(i=0;;i++) 

if(i==n) 
i=0; 
if(a[i]!=0)
p++;
else continue; 
if(p%3==0)
{
a[i]=0;
q--;

if(q==1) break;

for(i=0;i<n;i++) 
if(a[i]!=0) 
printf("最后留下的是: %d\n\n",a[i]); 
}

 



题目:输入5个数(含负数、小数)将它们按由小到大的顺序排列起来

提示:需要排数的数字通过参数传递进来,

例如:输入:./a.out  -1  2.1  -3  5  7 输出: -3 -1 2.1 5 7

#include<stdio.h>

 

int main()

{

float a[5];

int i, j;

float temp;

printf("please input 5 numbers :\n");

for(i=0;i<5;i++)

{

        scanf("%f",&a[i]);

}

for(i=0;i<5;i++)

{

        for(j=0;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");

 

while(1);

    return 0;

}

 





题目:求100以内的素数,全部打印出来

#include <stdio.h>
 
int main()
{
    int i,j;
    int temp;
 
    for(i = 2;i <=100;i++)
    {
        int temp = 1;
        for(j = 2; j < i;j++)
{
    if(i % j == 0)
    {
        temp = 0;
        break;
    }
}
if(temp == 1)
{
    printf("%d ",i);
}
    }
 
    return 0;
}

 


题目: 一个数如果恰好等于它的因子之和,这个数被成为”完数”,例如:6=1+2+3.请编程找出1000以内的完数

#include <stdio.h>
#include <string.h>
void main()
{
  int i,j,sum=1;
  for(i=3;i<=1000;i++)
  {
   sum=1;
   for(j=2;j<i;j++)
   {
     if( i%j==0)
     sum+=j;
     }
    if(i==sum)
    {
     printf("%3d, 因子为:",i);
     for( j=2; j<i; j++ )
     {
       if( i%j = 0 )
       printf("%3d,", j );
       }
    printf("\n");
    }

  }
while(1);
return 0;
}


阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: