C语言基础代码
#include<stdio.h>
#include<string.h>
#define N 2
void trvprint();
void arrsum();
void sort();
void file();
typedef struct{
char name[20];
char number[20];
}Users;
int main(){
// trvprint();
// arrsum();
// sort();
file();
return 0;
}
//倒叙打印
void trvprint(){
int num,temp,i=0;
printf("请输入一个数字:\n");
scanf("%d",&num);
printf("结果为:\n");
while(num!=0){
temp = num%10;
num = num/10;
i++;
printf("%d",temp);
}
printf("\n是%d位数",i);
}
//求三阶矩阵非对角线上元素之和
void arrsum(){
int arr[3][3] = {1,2,3,4,5,6,7,8,9};
int i,j,sum=0;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(i!=j&&(i-j)%2!=0){
sum+=arr[i][j];
}
}
}
printf("元素之和为:%d\n",sum);
}
//字典排序
void sort(){
int i,j;
Users temp;
Users user[N];
for(i=0;i<N;i++){
printf("请输入第%d用户的信息\n",i+1);
printf("请输入姓名:\n");
gets(user[i].name);
printf("请输入电话:\n");
gets(user[i].number);
}
//冒泡
for(i=0;i<N-1;i++){
int tag = 1;
for(j=0;j<N-i-1;j++){
//判断字符串的ASCII码
if(strcmp(user[j].name,user[j+1].name)>0){
temp = user[j];
user[j] = user[j+1];
user[j+1] = temp;
tag = 0;
}
}
if(tag){
break;
}
}
for(i=0;i<N;i++){
printf("姓名:%s,电话:%s\n",user[i].name,user[i].number);
}
}
//读取文件内容
void file(){
FILE *fp;
char string[] = "this is a test";
char show[20];
fp = fopen("abc.txt","w+");
fputs(string,fp);
rewind(fp);
fgets(show,strlen(string)+1,fp);
printf("内容是:%s",show);
fclose(fp);
}