12月6日 C基础作业

本文提供了一系列C语言编程练习题目,包括密码验证、素数计算、完数判断、倒序打印整数及评分统计等,旨在帮助初学者掌握基本的编程技巧。

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

第一题:银行卡取钱,假设密码是22111,先输入密码,当密码正确时,进到相关系统,当密码错误时,提示还有几次机会,若输入错误达到三次,提示卡被锁定。

char a=0,b=0,c=0,d=0,e=0;

      printf("请输入密码");

      scanf(" %c%c%c%c%c",&a,&b,&c,&d,&e);

if(a=='2'&&b=='2'&&c=='1'&&d=='1'&&e=='1'){

           printf("欢迎您!");

      }

      else{

                 printf("还有%d次机会\n",2);

                 printf("请输入密码:\n");

                 scanf(" %c%c%c%c%c",&a,&b,&c,&d,&e);

           if(a=='2'&&b=='2'&&c=='1'&&d=='1'&&e=='1'){

                      printf("欢迎您!");

                 }

                 else{

                      printf("还有%d次机会\n",1);

                      printf("请输入密码:\n");

                      scanf(" %c%c%c%c%c",&a,&b,&c,&d,&e);

                 if(a=='2'&&b=='2'&&c=='1'&&d=='1'&&e=='1'){

                            printf("欢迎您!");

                      }

                      else{

                            printf("错误,卡已被锁定");

                      }

                 }

      }

      return 0;

}

第二题:计算起始值到终止值之间的素数

#include <stdio.h>

int main(int argc, const char *argv[])

{

      int start=0,end=0,i=0,j=0,flag=1;

      printf("请输入两个数:");

      scanf("%d%d",&start,&end);

      for(j=start;j<=end;j++)

      {  

           flag=1;

           for(i=2;i<j;i++)

           {

                 if(j%i==0)

                 {

                      flag=0;

                 }

           }

         if(flag==1){

                 printf("素数为%d\t",j);

         } 

      }

      return 0;

}

第三题:计算起始值到终止值之间的完数

#include <stdio.h>

int main(int argc, const char *argv[])

{

      int i=0,j=0,sum=0,n1=0,n2=0;

      printf("请输入两个数");

      scanf("%d%d",&n1,&n2);

   for(j=n1;j<=n2;j++)

   {

         sum=0;

          for(i=1;i<j;i++){

               if(j%i==0){

                      sum=sum+i;}

           }

           if(sum==j){

                 printf("%d是完数\t",j);

           }

      }

      return 0;

}

第四题:输入一个整数,while实现求倒序打印每一位 (百度计算整个数)

#include <stdio.h>

int main(int argc, const char *argv[])

{

      int num=0,i=0;

      printf("请输入一个整数\n");

    scanf("%d",&num);

      while(num!=0){

           i=num%10;

           num=num/10;

           printf("%d",i);

      }

      printf("\n");

      return 0;

}

第五题(选做):好声音比赛,现有10名评委进行好声音选手评分,输入10名评委的分数,去掉最高分和最低分,求选手的平均分,最后输出最高分、最低分以及平均分。(任何循环都行)

#include <stdio.h>

int main(int argc, const char *argv[])

{

      int s[9];

    double average=0,total=0;

      int i=0;

      int max=0,min=0;

      printf("请输入10个分数:");

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

      {

           scanf("%d",&s[i]);

      }

      max=s[0];min=s[9];

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

      {

           if(max<s[i]){

                 max=s[i];

           }

      }

    for(i=8;i>=0;i--)

      {

           if(min>s[i]){

                 min=s[i];

           }

      }

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

      {

           total=total+s[i];

      }

      average=(total-(double)min-(double)max)/8;

      printf("平均分为%.2lf",average);

      printf("最高分是%d",max);

      printf("最低分是%d",min);

      return 0;

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值