![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C
C语言编程基础
張謀謀♥
Roninzhz
展开
-
C 数组1
//数组//具有相同的数据类型的若干变量//按有序的形式组织起来//这些按序排列的同类数据元素的集合称为数组//在C语言中,数组属于构造数据类型//一个数组可以分解为多个数组元素//这些数组元素可以是基本数据类型或构造类型//因此按数组元素的类型不同//数组又可分为//数值数字、字符数组、指针数组、结构数组等//==============================================================/* 数组:具有相同类型的数据组成的序列,是有序集原创 2021-10-07 08:45:06 · 118 阅读 · 0 评论 -
C 将a进行右循环移位
//将a进行右循环移位#include <stdio.h>main(){ unsigned char a,b,c; int n; printf("请输入需要实现循环右移的数字:"); scanf("%d",&a); printf("请输入需要实现右移的位数:"); scanf("%d",&n); b=a<<(sizeof(char)*8-n); c=a>>n; c=c|b; printf("结果是:%c\n",c);原创 2021-10-03 18:44:13 · 190 阅读 · 0 评论 -
C 将a进行右循环移位
//将a进行右循环移位#include <stdio.h>main(){ unsigned char a,b,c; int n; printf("请输入需要实现循环右移的数字:"); scanf("%d",&a); printf("请输入需要实现右移的位数:"); scanf("%d",&n); b=a<<(sizeof(char)*8-n); c=a>>n; c=c|b; printf("结果是:%c\n",c);原创 2021-10-02 13:39:17 · 276 阅读 · 0 评论 -
C 取一个char a从右端开始的2-5位
#include <stdio.h>//取一个char a从右端开始的2-5位 //1.先使a右移2位:a>>2//目的:要取出的那几位移到最右端//2.设置一个低四位全为1,其余全为0的数// ~(~0<<4)//3.将上面的 1 2进行&运算// (a>>4)&~(~0<<4) void main(){ char a,b,c,d; printf("请输入待检验的数字:\n"); scanf(原创 2021-10-02 13:38:45 · 291 阅读 · 0 评论 -
C (位运算)将输入的大写字母转换为小写字母输入的小写字母转换为大写字母
//将输入的大写字母转换为小写字母//输入的小写字母转换为大写字母//位操作完成//65-90 A-Z//97-122 a-z//A 100 0001 //a 110 0001//第五位区分大小写 //32 10 0000#include <stdio.h>#include <stdlib.h> main(){ char ch; printf("请您输入一个字母:\n"); ch=getchar(); fflush(stdin); while(!(c原创 2021-10-02 10:15:11 · 790 阅读 · 0 评论 -
C 在文件中读出指定数据
//在文件中读出指定数据#include <stdio.h>#include <stdlib.h>struct student{ char name[10]; int num; int age; char addr[15]; }boy;void main(){ FILE *fp; int i=1; //定义结构位置 if(!(fp=fopen("student-list","r"))) { printf("Cannot open the file!原创 2021-09-30 10:41:42 · 274 阅读 · 0 评论 -
C 从键盘输入4个学生的有关数据然后把他们以二进制的格式存储到磁盘文件中
//从键盘输入4个学生的有关数据//然后把他们以二进制的格式存储到磁盘文件中#include <stdio.h>#define SIZE 4void save();void load();struct student{ char name[10]; int num; int age; char addr[15];}stu[SIZE];int main(){ int i; printf("Please input the student's name,num,原创 2021-09-30 10:41:09 · 1059 阅读 · 0 评论 -
C 读入文件实例
//读入文件实例#include <stdio.h>#include <stdlib.h> void main(){ FILE *fp; char ch; if((fp=fopen("1.txt","rt"))==NULL) { printf("\nCannot open file strike any key exit!"); getch(); exit(1); } ch=fgetc(fp); while(ch!=EOF) { putchar原创 2021-09-29 20:19:30 · 100 阅读 · 0 评论 -
C 求爱因斯坦数学题有一条长阶,若每步跨 2阶 ,则 最后剩 l阶,
//求爱因斯坦数学题。//有一条长阶,若每步跨 2阶 ,则 最后剩 l阶,//若每步跨 3阶, 则最后剩 2阶 ,//若每步跨 5阶 ,则最后剩 4阶//每步跨 6阶 ,则最后剩 5阶//每步跨 7阶 , 最后正好 1阶 。#include <stdio.h>void main(){ int num=0; while(1) { if(num%2==1&&num%3==2&&num%5==4&&num%6==5&&a原创 2021-09-29 19:30:55 · 2546 阅读 · 0 评论 -
C 输入10个数,要求输出其中最大的元素和该数是第几位数
//输入10个数,要求输出其中最大的元素和该数是第几位数 #include <stdio.h>#define N 10void main(){ int a[N],i,max,num=1; printf("请输入10个数:\n"); for(i=0;i<N;i++) scanf("%d",&a[i]); max=a[0]; for(i=1;i<N;i++) { if(max<a[i]) { max=a[i]; num++原创 2021-09-29 19:27:32 · 190 阅读 · 0 评论 -
C 合成的图片文件的小练习
//合成的图片文件的小练习#include <stdio.h>#include <stdlib.h> void main(){ FILE *f_pic,*f_file,*f_finish; char ch,pic_name[20],file_name[20],finish_name[20]; printf("请输入需要合成的图片和文件的名称:\n"); printf("图片: "); scanf("%s",pic_name); printf("文件: ");原创 2021-09-29 19:24:06 · 56 阅读 · 0 评论 -
C 输入10个数,要求输出其中最大的元素和该数是第几位数
//输入10个数,要求输出其中最大的元素和该数是第几位数 #include <stdio.h>#define N 10void main(){ int a[N],i,max,num=1; printf("请输入10个数:\n"); for(i=0;i<N;i++) scanf("%d",&a[i]); max=a[0]; for(i=1;i<N;i++) { if(max<a[i]) { max=a[i]; num++原创 2021-09-29 12:09:21 · 258 阅读 · 0 评论 -
C 将一个二维数组行和列的元素互换存到另一个二维数组中
//将一个二维数组行和列的元素互换//存到另一个二维数组中#include <stdio.h>#define M 2#define N 3void main(){ int a[M][N]={1,2,3,4,5,6},i,j,b[N][M]; for(i=0;i<M;i++) { for(j=0;j<N;j++) { b[j][i]=a[i][j]; printf("%d",b[j][i]); } } }...原创 2021-09-29 11:57:05 · 529 阅读 · 0 评论 -
C 输出100~200之间既不能被3整除也不能被7整除的整数并统计这些整数的个数要求每行输出8个数
//输出100~200之间//既不能被3整除也不能被7整除的整数//并统计这些整数的个数//要求每行输出8个数#include <stdio.h>void main(){ int i,num=0; for(i=100;i<=200;i++) { if(i%3!=0&&i%7!=0) { printf("%d ",i); num++; if(num%8==0) printf("\n"); } } printf(原创 2021-09-29 11:38:56 · 6554 阅读 · 0 评论 -
C 从键盘上输入 3*4 矩阵的各个元素(空格或者回车间隔),求出其中值最大的元素的 值,以及其行号与列号。
//从键盘上输入 3*4 矩阵的各个元素(空格或者回车间隔),//求出其中值最大的元素的 值,以及其行号与列号。int main(){ int a[M][N],max,row=0,col=0,i,j,temp; for(i=0;i<M;i++) for(j=0;j<N;j++) { scanf("%d",&a[i][j]); } for(i=1;i<M;i++) for(j=1;j<N;j++) { if(a[i][j]>a[原创 2021-09-28 20:37:50 · 5671 阅读 · 0 评论 -
C 主函数中输入n,调用递归函数计算n!并输出
//主函数中输入n,调用递归函数计算n!//并输出#include <stdio.h>int Rec(int i);int main(){ int n; scanf("%d",&n); printf("%d的阶乘:%d",n,Rec(n)); return 0;} int Rec(int i){ if(i<=1) { return 1; } return i*Rec(i-1);}...原创 2021-09-28 20:34:39 · 3990 阅读 · 1 评论 -
C 水仙花数 一个3位数,其中各位数字立方和等于该数本身
//水仙花数//一个3位数,其中各位数字立方和等于该数本身//根据“水仙花数”的定义,//判断一个数是否为“水仙花数”,//最重要的是要把给出的三位数的个位、十位、百位分别拆分,//并求其立方和(设为s),//若s与给出的三位数相等, 三位数为“水仙花数”,反之,则不是。#include <stdio.h>int main(){ int hun,ten,ind,n; //整数的取值范围 for(n=100;n<1000;n++) { hun=n/100原创 2021-09-28 19:46:22 · 3434 阅读 · 0 评论 -
C/C++从键盘上输入一元二次方程(ax2+bx+c=0)的系数:a,b,c; 计算并输出方程的根
//C //从键盘上输入一元二次方程(ax2+bx+c=0)的系数:a,b,c;//计算并输出方程的根//如果没有实根则输出“No real roots.”// 输入:6,3,1 输出:No real roots. // 输入:1.0,-2,1 输出:x1=1,x2=1#include <stdio.h>#include <math.h>float main(){ float a,b,c,x1,x2,flag=0; scanf("%f,%f,%f",&am原创 2021-09-28 19:12:04 · 12012 阅读 · 0 评论 -
C 对一个整型数组求和
//对一个整型数组求和 //数组传递和指针传递两种方式 //默认数组传递#include <stdio.h>int addArray(int array[],int n);//int addArray(int *array,int n); int main(){ int data[]={0,1,2,3,4,5,6,7,8,9}; int size=sizeof(data)/sizeof(data[0]); //获取data数组的长度 printf("data: .原创 2021-09-27 16:21:58 · 776 阅读 · 0 评论 -
C 输入一串整数和任意数目的空格这些整数必须位于同一行中但允许出现在该行中的任何位置当用户敲下“Enter“键时输入结束自动对所有的整数求和
//输入一串整数和任意数目的空格//这些整数必须位于同一行中//但允许出现在该行中的任何位置//当用户敲下"Enter"键时输入结束//自动对所有的整数求和 #include <stdio.h>#include <stdlib.h>int main(){ int i; int sum=0; char ch; printf("请输入一串整数和任意数目的空格:"); while(scanf("%d",&i)==1) { sum+=i;.原创 2021-09-27 16:27:07 · 149 阅读 · 0 评论