首页 > 其他分享 >C语言阶段练习题

C语言阶段练习题

时间:2024-09-10 08:54:43浏览次数:11  
标签:练习题 输出 题目 int C语言 阶段 printf include 输入

  • 题目一:(25分)

  1. 题目描述:输入终值,输出所有能被7整除的数值及其和

数据展示: 

代码展示:

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

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

{

int a , sum=0 , m=0;          //定义输入值,求和值,以及判断换行的值

printf("题目:输入终值,输出所以被7整除的数值及其和\n");

printf("请输入:");

scanf("%d",&a );

for(int i=1;i<a;i++){

      if(i%7==0){             //模7换行

          printf("%-2d   ",i); //调整格式

          sum+=i;            //求模7的和

          m++;              //计数

      if(m%5==0) printf("\n");  //一行有五个就换行

      }



}



printf("\n\n100以内能被7整除的数值和是:%d\n",sum);

return 0;

}

  1. 评分要求
      1. 根据接收值准确定义变量类型(2分)
      2. 提示并输入终值(2分)
      3. 阅读题目确定循环要素:起始值、终值、步长(3分)
      4. 循环判断指定范围内能被7整除的数值并输出(5分) 核心
      5. 每5个换行输出(2分)
      6. 累计全部符合条件的数值和并输出(3分)
      7. 代码中添加不少于5行的关键注释描述实现思路(3分)

  • 题目二: (20分)

  1. 题目描述:  注册账号时需输入6位密码,根据密码组成验证其安全等级

输出框展示:

代码展示:

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

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

{

         printf("题目:注册账号时需输入6位密码,根据密码组成验证其安全等级\n");

         int n=0,flag1=0,flag2=0,flag3=0,flag4=0,x=0;

         char a[20]={0};

         printf(" 请输入6位密码: ");

         while(n!=15){    //当所以类型都包含就是1111转换成十进制就是15

                  n=0;

                  x=0;

                  flag1=0;

                  flag2=0;

                  flag3=0;

                  flag4=0;

                  while(a[x-1]!=10||x==0){    //用来判断回车符合退出第一次输入密码

                          a[x]=getchar();

         //     printf("%d %d\n",x,a[x]); //测试数组每个下标以及下标表示的内容

                          x++;

                  }

                  if(x!=7) {

                          printf("密码位数不正确,请再次输入密码:");

                          x=0;

                          continue;

                  }

         //     printf("%s\n",a);     //测试输出的字符串

                  x=0;

         //     printf("%ld\n",strlen(a)); //用来测试字符串

                  for(int i=0 ;i<6;i++){

                          if(a[i]>65&&a[i]<122){

                                   flag1=8;

                          }else if(a[i]>48&&a[i]<57){

                                   flag2=4;

                          }else if(a[i]== ' '){

                                   flag3=2;

                          }else{

                                   flag4=1;

                          }

                          n=flag1+flag2+flag3+flag4;

                  //     printf("%d\n",n);   //测试密码每位相加是多少,用来判断各个的值

                  }

                  if(n==4||n==8||n==2||n==1) {  //以下判断有几个不同类型的字符用来选择输出内容

                          printf("输入的六位的密码 等级验证为:低\n");

                          printf("密码太简单,请再次输入密码:");

                  }

                  else if(n==12||n==3||n==5||n==6||n==9||n==10) {

                          printf("请输入六位数的密码 该密码等级为中\n");

                          printf("密码太简单,请再次输入密码:");

                  }

                  else if(n==7||n==11||n==13||n==14) {

                          printf("请输入六位数密码 该秘密等级为高\n");

                          printf("密码太简单,请再次输入密码:");

                  }

                  else printf("请输入六位数密码 该秘密等级为极高\n");

                 

         }

        

         return 0;

}
  1. 评分要求
    1. 代码中需要添加至少5行关键注释描述实现思路(3分)
    2. 根据字母、数字、特殊字符、空格个数验证密码等级(3分) 核心
    3. 如长度不符合要求给出提示信息(1分)
    4. 判断并统计输入的密码各组成部分个数(4分) 核心
    5. 利用循环结构、getchar()函数 输入验证密码(3分)
    6. 根据接收用户值定义变量类型,命名遵守规范(2分)

  • 题目三 :(30分)

  1. 题目描述:  神州租车公司为提升服务质量近期展开满意度调查活动,请输入近期租车6位顾客满意度进行相关运算

数据展示: 

代码展示:

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

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

{

  int n,j=0,k=0;

  int a[20];

  float b;

  printf("题目:神州租车公司为提升服务质量近期展开满意度调查活动,请输入近期租车6位顾客满意度进行相关运算\n");

  for(int i=0 ; i<6 ;i++){

        printf("请输入第%d位顾客的满意度:",i+1);

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

  }

  int min;

  for(int i=0 ; i<6 ; i++){

        min = i;

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

              if(a[j]<a[min]){

                    min = j;

              }

        }

        int t = a[i];

        a[i] = a[min];

        a[min] = t;

  }

  for(int i=0 ; i<6 ; i++){

        if(a[i]>=90) j++;

        else k++;

        b=(float)j/(j+k);

       

  //    printf("%d %d %d\n",j,k,a[i]);

  }

  printf("\t满意度为:%.2f%%\n",b*100);

  if(j<6) printf("服务质量有待改变\n");

  else printf("保持现有服务质量水平\n");

  return 0;

}

  1. 评分要求 :
    1. 判断如果百分比值低于90%则显示信息“服务质量有待改进”,否则提示“保持现
    2. 统计满意度个数,计算百分比并输出 (90分为合格) (4分) 核心
    3. 将 6位用户的满意度按由小到大的顺序排序输出(5分) 核心
    4. 循环输入6位顾客的满意度值(5分) 核心
    5. 正确定义一维数组 (3分)

有服务质量水平” (3分)

      1. 代码关键处添加不少于5行的规范注释(5分)

  • 题目四 :(25分)

  1. 题目描述:  输入一批数,输出是3倍数的数值,计算3倍数中的最大值、最小值

    

数据展示: 

代码展示:

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

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

{

printf("题目:输入一批数,输出是3倍数的数值,计算3倍数中的最大值、最小值\n");

int a[100] , d , min,max , b[100],j=0;

printf("请输入数组长度:");

scanf("%d",&d);

printf("请依次输入数组元素值:");

for(int i=0 ; i<d ; i++){           //输入数组内容,长度为d

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

}

printf(" 数组中3倍数的元素包含:");

for(int i=0 ; i<d ; i++){                //当可以被3整除,赋值到b数组

     if(a[i]%3==0) {

         b[j] = a[i];

         j++;

         printf("%d\t",a[i]);

     }

}

min = 0;
max = 0;

for(int i=0 ; i<j ; i++){           //在b数组中依次找小的值,下标赋值给min

     if(b[i]<b[min]){

         min = i;

     }
    ifb[i]>b[max]){

         max = i;   
} 

}

printf("\n元素中3的倍数最小的值是:%d\n",b[min]);      //利用min找到最小值
printf("\n元素中3的倍数最大的值是:%d\n",b[max]);      //利用max找到最大值

return 0;

}
  1. 评分要求
      1. 正确定义一维数组(2分)
      2. 提示并输入数组长度(2分)
      3. 循环输入数组元素的值(5分) 核心
      4. 循环判断并输出数组元素中是3倍数的元素(4分) 核心
      5. 循环查找数组元素中是3倍数的最小值,最大值并输出结果(4分) 核心
      6. 代码中添加不少于5行的关键注释描述程序实现思路(4分)

  • 题目五:(30分)

  1. 题目描述:输入操作数及运算符完成数值的加、减、乘、除运算

         数据展示:

代码展示:

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

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

{

printf("题目:输入操作数及运算符完成数值的加、减、乘、除运算a\n");

printf("请输入第一个操作数:");

float n,m;

char i,j;

float a;

scanf("%f",&n);

printf("请输入运算符[加-P/p 减-S/s 乘-M/m 除-D/d]");

getchar();

scanf("%c",&i);

printf("请输入第二个操作数:");

scanf("%f",&m);

printf("运算结果为\n");

if(i=='P'||i=='p'){

     a=n+m;

     j='+';

}

if(i=='S'||i=='s'){

     a=n-m;

     j='-';

}

if(i=='M'||i=='m'){

     a=n*m;

     j='*';

}

if(i=='D'||i=='d'){

     if(0==m) {

         printf("分母不能为0/n");

         return 0;

     }

     else a=n+m;

     j='/';

}

printf("%.2f%c%.2f=%.2f\n",n,j,m,a);

return 0;

}
  1. 评分要求
  1. 定义接收操作数及运算符的变量,名称要符合规范(2分)
  2. 提示并输入第一个操作数(2分)
  3. 提示并输入运算符[加减乘除用字母代表](2分)
  4. 提示并输入第二个操作数(2分)
  5. 采用多分支选择结构switch对输入的操作数进行判断,输入大小写字母都可以调用
  6. 对应的运算(3分)  核心
  7. 正常计算两数相加并输出结果(2分)核心
  8. 正常计算两数相减并输出结果(2分)核心
  9. 正常计算两数相乘并输出结果(2分)核心
  10. 正常计算两数相除并输出结果(2分)核心
  11. 如分母为0则输出提示信息“分母不能为零!”(2分)
  12. 核心语句需添加不少于5行的规范注释描述实现思路(4分)

标签:练习题,输出,题目,int,C语言,阶段,printf,include,输入
From: https://blog.csdn.net/qq_53841892/article/details/141997295

相关文章

  • C语言 结构体
    一,什么是结构体结构体(struct)是一种用户用户的定义类型,它允许将多个不同类型的数据组合在一起,形成一个复合的数据类型。结构体通常用于表示一个具有多种属性的实体,例如一个学生的姓名,学号,年龄,成绩等等。在c语言中,结构体的定义通常包括以下几个部分1.名称:结构体标识符,用于引用该结构......
  • C语言程序设计-练习篇
    不知道结果仍义无反顾地才是勇士。三,打印整数二进制的奇数位和偶数位题目内容:获取一个整数二进制序列中所有的奇数位和偶数位,分别打印出二进制序列#include<stdio.h>//打印整数二进制的奇数位和偶数位intmain(){ inti=0; intnum=0; scanf("%d",&num); //......
  • C语言中数组的知识(后面有三子棋小游戏)
    一、数组的创建和初始化    数组是一组同类型元素的集合,合理运用数组可以帮我们完成一些复杂的操作    1.1一维数组的创建和初始化    一维数组创建的方式:type_tarr_name[const_n];//type_t是指数组的元素类型//const_n是一个常量表达式,用......
  • 贪吃蛇项目实现(C语言)——附源码
    前言贪吃蛇是一款十分经典的游戏,其通过控制贪吃蛇的上下左右移动来吃食物,延长自己的身体,也会因为撞到墙体和自身而死亡。下面我们通过C语言来实现贪吃蛇。1.技术要点C语言枚举,结构体,链表,动态内存管理,预处理指令,函数,Win32API等。2.Win32API 要使用Win32API我们就需......
  • C语言的历史
    C语言的历史目录引言C语言的起源2.1计算机编程语言的早期历史2.2BCPL和B语言C语言的诞生3.1丹尼斯·里奇与贝尔实验室3.2Unix系统的发展C语言的标准化进程4.1ANSIC4.2ISOC标准C语言的应用5.1操作系统开发5.2嵌入式系统5.3编译......
  • 鹏哥C语言14---数组
    //------------------------------------------------------------------9.数组//--------------------------------------------------------9.1数组的定义// arr[]={,,,,,};//数组里边可以存放一组相同类型的元素#include<stdio.h>intmain(){   //---------......
  • C语言学习 --- 修饰变量的关键字
    修饰变量的关键字        修饰变量的关键字+数据类型+变量名 auto:自动默认不写register:        register是作为寄存器的变量,就是在CPU里面存储的地方作用:        将频繁进行IO操作的变量声明成寄存器变量,节省数据读取操作的时间,提高执行效率......
  • C语言指针篇
    一.指针的本质        指针的本质就是有类型的地址。地址指的是地址总线上的地址码表,而类型决定了我们操作这个指针时,要从这个地址码上读写的长度。即指针的类型决定读写一个地址块的数据长度(1字节、2字节、4字节还是结构体定义的长度)。        比如(uint8_t......
  • 0基础学习C语言 1
    通常我们写代码或者学习看demo时都会用到二进制或者十六进制,所以首先需要学会各个进制间的换算二进制:0和1八进制:0~7十进制:0~9十六进制:0~9,A~F二进制(B)八进制(Q)十进制十六进制(H)000011111022211333100444101555110666111777100010881001119910101210A10111311B11001412C110......
  • [oeasy]python0033_先有操作系统还是先有编程语言_c语言是怎么来的
    [趣味拓展]计算机语言起源_c语言诞生......