C语言程序设计经典例题(考研必背)(基础篇)第二周
一,1000以内的回文素数
#include<stdio.h>
#include<math.h>int judg(int i)//用于判断一个数字是不是素数
{int j;if(i==1)return 0;if(i==2)return 1;for(j=2;j<=sqrt(i);j++){if(i%j==0)break;}if(j>sqrt(i))return 1;
}
int main()
{int i;for(i=10;i<1000;i++)if(judg(i)==1)if(i/100==0)//判断是不是两位数{if(i/10==i%10)//判断两位数的个位和十位是否相等printf("%d ",i);}elseif(i/100==i%10)//判断百位和个位是否相等printf("%d ",i);
}
二,数组中插入元素
#include <stdio.h>void insert(int *a,int n,int index,int e)
{int i,j;for(j=n-1;j>=index-1;j--)a[j+1]=a[j];a[index-1]=e;
}int main()
{int a[5]={2,4,5,6,0};int i;for(i=0;i<5;i++)//遍历printf("%d\t",a[i]);printf("\n");insert(a,5,2,15);//第2个位置插入15for(i=0;i<6;i++)printf("%d\t",a[i]);//输出排序后的数组
}
三,求2/1,3/2,5/3,8/5…前20项的和。
#include <stdio.h>int main()
{int n,t,num=20;float a=2,b=1,s=0;for(n=1;n<=num;n++){s=a/b+s;t=a;a=a+b;b=t;//t把前一个分式的分子传个下一个分式的分母}printf("sum=%9.6f\n",s);return 0;
}
四,获取二维数组将3*4的矩阵中元素的最大值及下标
#include <stdio.h>int main()
{int a[3][4],i,j,max,max_i=0,max_j=0;for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];max_i=i;max_j=j;}printf("max=a[%d][%d]=%d\n",max_i,max_j,max);return 0;
}
五,矩阵转置(mxn阶,初始a(i,j),转置后
b(j,i)=a(i,j))
#include <stdio.h>int main()
{int i,j,i1,j1,a[101][101],b[101][101];printf("please input the num of rows(<=100)\n");scanf("%d",&i1);printf("please input the num of columns(<=100)\n");scanf("%d",&j1);for(i=0;i<i1;i++)for(j=0;j<j1;j++)b[j][i]=a[i][j];return 0;
}
六,求3x3矩阵对角线元素之和
void main()
{int a[3][3];int sum=0,i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++)for(j=0;j<3;j++)if(i==j||(i+j)==2)//下标满足情况sum=a[i][j]+sum;printf("%d\n",sum);}
七,求水仙花数(三位数,各位数字立方和等于其本身)
#include <stdio.h>int main()
{int a,b,c,i;for(i=100;i<1000;i++){a=i%10;b=i/10%10;c=i/100;if(a*a*a+b*b*b+c*c*c==i)printf("%5d\n",i);}return 0;
}
八,求前20个Fibonacci数列
#include <stdio.h>int main()
{int a=1,b=1;int i;for(i=0;i<10;i++){printf(" %d %d",a,b);a=a+b;b=b+a;}system("pause");
}
九,生兔子问题(1,1,2,3,5,8……)
#include <stdio.h>int main()
{int i,tu1,tu2,tu3,m;tu1=1;tu2=1;printf("month\n");scanf("%d",&m);if(m==1||m==2){printf("yi dui tuzi");}else if(m>2){ for(i=3;i<=m;i++){tu3=tu1+tu2;tu1=tu2;tu2=tu3;}printf("%dmonth de tuzi:%d\n",m,tu3);} return 0;
}
十,输入一行英文句子,计算单词个数
#include <stdio.h>int main()
{printf("input:\n");char ch;int i,count=0,word=0;while((ch=getchar())!='\n')if(ch==' ')word=0;else if(word==0){word=1;count++;}printf("you %d ge danci\n",count);return 0;
}
十一,加密解密(字符+位置+偏移值5)
#include <stdio.h>
#include <string.h>
int main()
{int result=1;int i;int count=0;char Text[128]={'\0'};char cryptograph[128]={'\0'};while(1){if(result==1){printf("请输入要加密的明文:\n");scanf ("%s",&Text);count=strlen(Text);for(i=0;i<count;i++){cryptograph[i]=Text[i]+i+5;}cryptograph[i]='\0';printf("加密后的密文是:%s\n",cryptograph);}else if(result==2){count=strlen(Text);for(i=0;i<count;i++){Text[i]=cryptograph[i]-i-5;}Text[i]='\0';printf("解密后的明文是:%s\n",Text);}else if(result==3){break;}else{printf("请输入正确的命令符:\n");}printf("输入1加密新的明文,输入2对刚加密的密文进行解密,输入3退出系统:\n");printf("请输入命令符:\n");scanf("%d",&result);}return 0;
}
十二,逆序输出(将一个从键盘输入的整数存放到一个数组中,通过程序的运行按照数组中的逆序输出该整数,利用递归的方法解决问题)
#include <stdio.h>int convert(char s[],int n)
{int i;if((i=n/10)!=0)//通过不断取余和整除10来得到数据的每一位convert(s+1,i);*s=n%10+'0';return 0;
}int main()
{int num;char str[10]=" ";printf("input integer data: ");scanf("%d",&num);convert(str,num);printf("output string: \n");puts(str);return 0;
}
十三,将一个一维数组就地逆置
#include <stdio.h>int main()
{int a[10]={1,2,3,4,5,6,7,8,9,10};int i=0,j=9;while(i<=j){int tem=a[i];a[i]=a[j];a[j]=tem;i++;j--;}for(i=0;i<10;i++)printf("%d ",a[i]);return 0;
}
十四,数据加密(每位数字加上5,除10的余数取代该数,再将第一位和第四位交换,二三位交换)
#include <stdio.h>int main()
{int a,i,aa[4],t;scanf("%d",&a);aa[0]=a%10;aa[1]=a%100/10;aa[2]=a%1000/100;aa[3]=a/1000;for(i=0;i<=3;i++){aa[i]+=5;aa[i]%=10;}for(i=0;i<=1;i++){t=aa[i];aa[i]=aa[3-i];aa[3-i]=t;}for(i=3;i>=0;i--)printf("%d",aa[i]);return 0;
}
十五,输出菱形
#include <stdio.h>
#include <stdlib.h>
int main()
{int line = 0; //上半部分行数int i = 0; //控制循环次数int j = 0;//控制星星数int n = 0;//控制空格数printf("input:");scanf("%d", &line);if(line % 2 == 0) //判断是否为奇数行 {printf("error\n");exit(1);}for (i = 0; i < line; i++)//上半部分 {for (n = 0; n < line - 1 - i; n++)//每行星星前面的空格数 {printf(" ");}for (j = 0; j < 2 * (i+1)-1; j++)//*的个数=2*行数-1{printf("*");}printf("\n");}for (i = 0; i < line - 1; i++)//下半部分 {for (n = 0; n < i + 1; n++){printf(" ");}for (j = 0; j < 2 * (line - 1 - i) - 1; j++){printf("*");}printf("\n");}system("pause");return 0;
}
十六,求2-300范围内的完数(完数=因子之和,如6=1+2+3)
#include <stdio.h>int main()
{int num, i, sum;for(num=2;num<=300;num++){sum=0;for(i=1;i<num;i++){if(num%i==0)sum+=i;}if(sum==num)printf("%d\n",num);}return 0;
}
十七,求孪生素数(间隔为2的素数)3-1000以内
#include <stdio.h>
#include <math.h>
int prime(int m)
{int j;for(j=2;j<=sqrt(m);j++){if(m%j==0)return 0;}return 1;
}int main()
{int i,count=0;for(i=3;i<1000;i++)if(prime(i)&&prime(i+2)){printf("(%-3d,%3d)",i,i+2);count++;if(count%5==0)printf("\n");}return 0;
}
十八,求回文数(n<256,n的平方具有对称性质的数)
#include <stdio.h>void main()
{int i,j,k;for(i=0;i<=256;i++){j=i*i;k=0;while(j>0){k=k*10+j%10;//把j的值从最低位往前依次给k最高位往后 j=j/10;//j=0的时候就交换完了 }if(k==i*i)//如果是回文的,交换完还是不变的 printf("%d*%d=%d\n",i,i,i*i);}
}
十九,判断一个五位数是不是回文数
#include <stdio.h>int main()
{int a,b,c,d,n;scanf("%d",&n);a=n%10;b=n%100/10;c=n%10000/1000;d=n/10000;if(a==d&&b==c)printf("this number is a huiwen\n");elseprintf("this number is not a huiwen\n");return 0;
}
二十,求100以内所有的勾股数
#include <stdio.h>
#include <math.h>int main()
{int a,b,c,i;printf("100以内的勾股数:\n");for(a=1;a<=100;a++)for(b=1;b<=100;b++){c=sqrt(a*a+b*b);if(c*c==a*a+b*b && a+b>c && a+c>b && b+c>a && c<=100){printf("%4d %4d %4d\n",a,b,c);}}printf("\n");return 0;
}
C语言程序设计经典例题(考研必背)(基础篇)第二周相关推荐
- C语言程序设计笔记(浙大翁恺版) 第二周:计算
按照中国大学MOOC上浙江大学翁恺老师主讲的版本所作,B站上也有资源.原课程链接如下: https://www.icourse163.org/course/ZJU-9001 由于是大三抽空回头整理的, ...
- 小甲鱼python课后题简书_MOOC_Python语言程序设计(嵩天)课后练习_第二周
以下内容仅用作个人学习记录 程序设计题 实例2: Python蟒蛇绘制 描述 这是"实例"题,与课上讲解实例相同,请作答检验学习效果. 使用turtle库,绘制一个蟒蛇形状的图形. ...
- C语言程序设计笔记(浙大翁恺版) 第九周:指针
按照中国大学MOOC上浙江大学翁恺老师主讲的版本所作,B站上也有资源.原课程链接如下: https://www.icourse163.org/course/ZJU-9001 由于是大三抽空回头整理的, ...
- C 语言编程 经典例题 猴子吃桃问题:
C 语言编程 经典例题 猴子吃桃问题:猴子第一天摘下若干桃子,当即吃了一半.还不过瘾,又多吃了一个.第二天早上又将剩下的桃子吃掉一半,又多吃了一个. 首先看题目知道第十天的桃子数为x10 = 1个,那 ...
- 判断体型c语言程序,C语言程序设计经典体型.doc
C语言程序设计经典体型 <C语言程序设计> 顺序结构程序设计 4.输入一个三位整数,拆分并打印出每位数. 例:输入123,打印:123的各位数字为1,2,3 #include void m ...
- c语言程序汇总,C语言程序设计经典题目大汇总
1.C语言程序设计经典题目大汇总第一章 1main() printf("*"n"); printf(" welcome you n"); printf ...
- 《Java语言程序设计与数据结构》编程练习答案(第二章)(二)
<Java语言程序设计与数据结构>编程练习答案(第二章)(二) 英文名:Introduction to Java Programming and Data Structures, Comp ...
- mac 删除分区 command r 选择网络_Mac使用必看基础篇,Mac快捷键大全,mac新手入门指南...
你是Mac新手吗?你对使用Mac电脑有疑问吗?你还不知道mac有哪些快捷键吗?别着急,来看看小编给大家准备的Mac使用必看基础篇--Mac快捷键大全,对于新手用户很有帮助哦!! 一.开机相关命令快捷键 ...
- 828c语言程序设计_21计算机考研只考一门高级语言程序设计的院校大汇总!
考研院校选择是一个决定考研成败的一步,也是人生中一次重大的选择! 下面汇总了计算机考研专硕只考一门高级程序设计的院校: 首都师范大学:(906)C语言程序设计 中央财经大学:(901)C语言程序设计 ...
- atmega16单片机c语言程序设计经典实例pdf,《AVR单片机C语言程序设计实例精粹》.pdf...
AutodeskAsiaPteLtd主编的<AutodeskRevitStructure2012应用宝典>是对AutodeskRevitStructure2012进行全面介绍的权威用书.全 ...
最新文章
- Ubuntu系统执行shell 脚本的方法
- c#运行shell命令
- c#中结构体和类的比较
- centos7.8源码编译安装nginx1.17.10
- 友盟开放日: 通过 App 内社区提高留存率的 6 个技巧
- Linux : find big file in the all directories
- 目标检测的图像特征提取之(一)Hog特征提取
- WPF 获取程序路径的一些方法,根据程序路径获取程序集信息
- linux挂载sata硬盘分区,Linux下挂载硬盘分区的几种方法
- SpringMVC使用CommonsMultipartResolver上传文件
- 九江职业技术学院工业机器人_黑龙江农业工程职业学院学子喜获工业机器人大赛一等奖...
- ssh命令行使用明文密码连接远程服务器并执行命令
- android6.0相机假对焦,android相机对焦
- 【115】StrokeIt相关操作
- 设备一路485如何供两台电脑使用_干货!消防设备供电系统有哪些部分构成,用电负荷等级如何划分?...
- 保护海洋主题的微信公众号图文排版必备素材集锦
- 拉格朗日四平方和定理
- QTableView 基本使用
- MySQL数据库——数据库逻辑结构设计阶段(非常重要)
- 民航空管中计算机的应用发展,民航空管网络与信息安全管理体系的构建论文