【C语言】记录出错题

1.

#include <stdio.h>
#include <string.h>
void main(){
   char *p1,str[50]="xyz";
    p1="ABCD";
    strcpy(str+2,p1+2);
    printf("%s",str);
}

错误结果:xyzCD

正确输出结果为:xyCD 

2.

#include <stdio.h>
void main(){
   char c;
   c=getchar();

 if(c>='a'&&c<='z'||c>='X'&&c<='Z'){
	 c=c-23;
	 
 }
	 printf("%c\n",c);
}

从键盘上输入Next

输出结果为:N

3.

#include <stdio.h>
void main(){
 int m,n,x,y,m1,n1,x1,y1,k=0;
 for(m=11;m<=98;m++){
	 for(n=m+1;n<=99;n++){
	   x=m/10;
	   y=m%10;
	   x1=n/10;
	   y1=n%10;
	   m1=y*10+x;
	   n1=y1*10+x1;
	   if(m*n==m1*n1&&m<m1&&m<n1){
	      k++;
		  printf("%d*%d=%d*%d ",m,n,m1,n1,m*n);
	   }
	 }
 }
      printf("\n");
      printf("%d对\n",k);
}

4.编写函数,将一个字符串的元音字母复制到另一字符串中,然后输出。

#include <stdio.h>
void main()
{
    void cpy(char [],char []);
       char str[80],c[80];
    printf("input string:");
    gets(str);
    cpy(str,c);
    printf("The vowel letters are:%s\n",c);
}
void cpy(char s[],char c[])
{
   int i,j;
   for (i=0,j=0;s[i]!='\0';i++)
 if(s[i]=='a'||s[i]=='A'||s[i]=='e'||s[i]=='E'||s[i]=='i'||s[i]=='I'||s[i]=='o'||s[i]=='O'||s[i]=='u'||s[i]=='U')
{
        c[j]=s[i];
        j++;
}
     c[j]='\0';
}

5.用递归法将一个整数n转换成字符串。例如,输入483,应输出字符串“483”。n的位数不确定,可以是任意位数的整数。

#include <stdio.h>
void main()
{
  void convert(int n);
  int number;

  printf("input an integer: ");
  scanf("%d",&number);
  printf("output: ");
  if (number<0)
{
	putchar('-');putchar(' '); /* 先输出一个'-'号和空格 */
    number=-number;
}
   convert(number);
    printf("\n");
}
void convert(int n)
{
   int i;
   if ((i=n/10)!=0)
   convert(i);
   putchar(n%10+'0');
  // putchar(32);
}

未完待续-------------

发布了52 篇原创文章 · 获赞 69 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/lbqlzch/article/details/87951314