首页 > 其他分享 >实验3

实验3

时间:2024-10-23 17:23:17浏览次数:1  
标签:10 return int ans score 实验 printf

TASK 1

 1 #include <stdio.h>
 2 
 3 char score_to_grade(int score);  
 4 
 5 int main() {
 6     int score;
 7     char grade;
 8 
 9     while(scanf("%d", &score) != EOF) {
10         grade = score_to_grade(score);
11         printf("分数: %d, 等级: %c\n\n", score, grade);
12     }
13 
14     return 0;
15 }
16 
17 
18 char score_to_grade(int score) {
19     char ans;
20 
21     switch(score/10) {
22     case 10:
23     case 9:   ans = 'A'; break;
24     case 8:   ans = 'B'; break;
25     case 7:   ans = 'C'; break;
26     case 6:   ans = 'D'; break;
27     default:  ans = 'E';
28     }
29 
30     return ans;
31 }

问题1:通过对score除以10划分成绩为90+、80+、70+等等的不同层次;形参是整形,返回值是字符

问题2:有问题;删去break后,程序无法在完成score-〉grade后终止,可能导致串线(直接跳转到default);A、B、C、D是字符而不是字符串,应该改用单引号,可能导致报错无法运行

 

TASK 2

 1 #include <stdio.h>
 2 
 3 int sum_digits(int n);  
 4 
 5 int main() {
 6     int n;
 7     int ans;
 8 
 9     while(printf("Enter n: "), scanf("%d", &n) != EOF) {
10         ans = sum_digits(n);    
11         printf("n = %d, ans = %d\n\n", n, ans);
12     }
13 
14     return 0;
15 }
16 
17 
18 int sum_digits(int n) {
19     int ans = 0;
20 
21     while(n != 0) {
22         ans += n % 10;
23         n /= 10;
24     }
25 
26     return ans;
27 }

问题1:计算输入数字(两位数)各位之和

问题2:能实现同等效果;上述方法是通过整除先后获得十位和个位(方法相同),另一个方法是先整除得到十位,再取模得到个位(方法不同)

 

TASK 3

 1 #include <stdio.h>
 2 
 3 int power(int x, int n); 
 4 
 5 int main() {
 6     int x, n;
 7     int ans;
 8 
 9     while(printf("Enter x and n: "), scanf("%d%d", &x, &n) != EOF) {
10         ans = power(x, n);  
11         printf("n = %d, ans = %d\n\n", n, ans);
12     }
13     
14     return 0;
15 }
16 
17 
18 int power(int x, int n) {
19     int t;
20 
21     if(n == 0)
22         return 1;
23     else if(n % 2)
24         return x * power(x, n-1);
25     else {
26         t = power(x, n/2);
27         return t*t;
28     }
29 }

问题1:计算x的n次方

问题2:是递归函数;递归模式:a)当指数为0时答案为1输出,b)当指数为偶数时答案为x与x的(n-1)次幂的乘积输出,c)当指数为奇数时答案为(x的二分之n)平方输出

 

TASK 4

 1 #include<stdio.h>
 2 
 3 int n = 100,i = 2;
 4 int ans,sum = 0;
 5 
 6 int is_prime(int n,int i);
 7 
 8 int main()
 9 {
10     printf("100以内的孪生素数:\n");
11     
12     ans = is_prime(n,i);
13     
14     printf("%d",ans);
15     printf("100以内的孪生素数共有%d个",sum);
16     
17     
18 }
19 
20 
21 int is_prime(int n,int i)
22 {
23     for(;i <= n/2;++i)
24     {
25         if(n % i || (n+2)% i)
         return 0;
26 continue; 27 else 28 return 1;
         printf("%d",n); 29 sum += 1; 30 31 } 32 }

 

标签:10,return,int,ans,score,实验,printf
From: https://www.cnblogs.com/Florence11/p/18497746

相关文章

  • 实验2
    实验任务1:源码及截图:1#pragmaonce23#include<string>45//类T:声明6classT{7//对象属性、方法8public:9T(intx=0,inty=0);//普通构造函数10T(constT&t);//复制构造函数1//类T:实现2//普通函数实现34......
  • 20222316 2024-2025-1 《网络与系统攻防技术》实验二实验报告
    一、实验内容1.学习总结——后门与免杀1)后门基本概念后门就是不经过正常认证流程而访问系统的通道。狭义后门:特指潜伏于操作系统中专门做后门的一个程序,“坏人”可以连接这个程序,远程执行各种指令。后面类型有编译器后门、操作系统后门、应用程序后门、潜伏于操作系统中或......
  • 20222324 石国力 《网络与系统攻防技术》 实验二
    1.实验内容(1)使用netcat获取主机操作Shell,cron启动某项任务(2)使用socat获取主机操作Shell,任务计划启动(3)使用MSFmeterpreter(或其他软件)生成可执行文件(后门),利用ncat或socat传送到主机并运行获取主机Shell(4)使用MSFmeterpreter(或其他软件)生成获取目标主机音频、摄像头、......
  • 实验2
    x.h#include<iostream>#include<math.h>#include<string>usingnamespacestd;usingstd::string;classT{public:T(intx=0,inty=0);T(constT&t);T(T&&t);~T();sta......
  • 实验2
    任务1:t.h代码:#pragmaonce#include<string>//类T:声明classT{//对象属性、方法public:T(intx=0,inty=0);//普通构造函数T(constT&t);//复制构造函数T(T&&t);//移动构造函数~T();//析构函数voida......
  • 实验2 类和对象 基础编程1
    1,实验任务1t.cpp1//类T:实现2//普通函数实现34#include"t.h"5#include<iostream>6#include<string>78usingstd::cout;9usingstd::endl;10usingstd::string;1112//static成员数据类外初始化13conststd::stringT::doc{"......
  • 20222310 2024-2025-1 《网络与系统攻防技术》实验三实验报告
    一、实验内容1.正确使用msf编码器,veil-evasion,自己利用shellcode编程等免杀工具或技巧(1)正确使用msf编码器,使用msfvenom生成如jar之类的其他文件(2)学会使用veil,加壳工具(3)能够使用C+shellcode编程2.通过组合应用各种技术实现恶意代码免杀成功实现了免杀的,简单语言描述原理,不......
  • 实验2
    实验任务1t.h代码点击查看代码#pragmaonce#include<string>//类T:声明classT{//对象属性、方法public:T(intx=0,inty=0);//普通构造函数T(constT&t);//复制构造函数T(T&&t);//移动构造函数~T();//析构......
  • 实验二
    任务一:代码:t.h:1#pragmaonce23#include<string>45//类T:声明6classT{7//对象属性、方法8public:9T(intx=0,inty=0);//普通构造函数10T(constT&t);//复制构造函数11T(T&&t);//移动构造函数12......
  • 实验二
    1.实验任务11#pragmaonce23#include<string>45//类T:声明6classT{7//对象属性、方法8public:9T(intx=0,inty=0);//普通构造函数10T(constT&t);//复制构造函数11T(T&&t);//移动构造函数12~T(......