二维数组行与列的转置。
#include <stdio.h>
void main()
{
int a[2][3]={{1,2,3},{4,5,6}};
int i,j;
for (i=0;i<2;++i)
{
for (j=0;j<3;j++)
{
printf("%d\t",a[i][j]);
}
putchar('\n');
}
printf("___________________");
putchar('\n');
for (j=0;j<3;j++)
{
for (i=0;i<2;i++)
{
printf("%d\t",a[i][j]);
}
putchar('\n');
}
}
strcat函数:
#include <stdio.h>
#include <string.h>
void main()
{
char a[10]={"leaf"};
char b[6]={"apple"};
strcat(a,b);
puts(a);
}
strcpy函数
#include <stdio.h>
#include <string.h>
void main()
{
char a[10],b[]={"china"};
strcpy(a,b);
puts(a);
}
strcmp()函数:
#include <stdio.h>
#include <string.h>
void main()
{
char a[10]="china";
char b[6]="apple";
int c;
c=strcmp(a,b);
printf("%d\n",c);
}
、输入若干整数,从大到小排序。
#include <stdio.h>
#define M 5
void main()
{
int a[M];
int i;
int j;
int temp=0;
for (i=0;i<M;i++)
{
printf("第%d个数:",i+1);
scanf("%d",a+i);
}
printf("--------------------\n");
for (i=0;i<M-1;i++)
{
for (j=i+1;j<M;j++)
{
if (a[i]<a[j])
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
for (i=0;i<M;i++)
{
printf("%d\n",a[i]);
}
}
2、输入若干个字符串进行递增排序。
#include <stdio.h>
#include <string.h>
void main()
{
char ch[5][10];
char temp[10];
int i;
int j;
for (i=0;i<5;i++)
{
printf("第%d字符串:",i+1);
gets(ch[i]);
}
for (i=0;i<5;i++)
{
puts(ch[i]);
}
printf("-----------------------\n");
for (i=0;i<4;i++)
{
for (j=i+1;j<5;j++)
{
if ((strcmp(ch[i],ch[j]))>0)
{
strcpy(temp,ch[i]);
strcpy(ch[i],ch[j]);
strcpy(ch[j],temp);
}
}
}
for (i=0;i<5;i++)
{
puts(ch[i]);
}
}
题目:输入某年某月某日,判断这一天是这一年的第几天?
#include <stdio.h>
void main()
{
int year;
int month;
int day,i;
int sum=0;
printf("请输入日期(yy-mm-dd):");
scanf("%d-%d-%d",&year,&month,&day);
sum=day;
for (i=1;i<month;i++)
{
switch (i)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
sum+=31;
break;
case 2:
sum+=28;
break;
case 4:
case 6:
case 9:
case 11:
sum+=30;
break;
}
}
if (year%4==0&&year%100!=0||year%400==0)
{
if (month>2)
{
sum+=1;
}
}
printf("%d\n",sum);
}