您的位置:首页 > 编程语言

ACM_编程与调试重点记录(十四)

2010-03-10 22:10 253 查看
1.字符串输入输出函数的使用比较:
/*
【例8-15-2】字符串输入输出函数的使用比较。
*/
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 

/* 程序B:使用gets和puts函数输入输出字符串的示例*/
#include <stdio.h>
int main( )
{
    char str[80];
 

    gets(str);
    puts(str);
    puts("Hello");
 

    return 0;
}   
/*
【例8-15-1】字符串输入输出函数的使用比较。
*/
 

/* 程序A:使用scanf和printf函数输入输出字符串的示例 */
#include <stdio.h>
int main( )
{
    char str[80];
 

    scanf("%s", str);
    printf("%s", str);
    printf("%s", "Hello");
 

    return 0;
}
 

2 #include<stdio.h>
void dele(int a[]);
int min(int a[]);
void sum(int a[]);
int n=9;
main()
{
    int i,a[9]={1,4,2,5,23,5,55,-2,1},*p,min1;
    p=a;
    dele(p);
    min1=min(p);
    printf("/n/n/n");
    printf("min=%d/n",min1);
    sum(p);
    //system("pause");[GP1] 
}
 

void dele(int a[])
{
    int maxi,i;
    maxi=0;
    for (i=1;i<n;i++)
       
 

 if (maxi<a[i])maxi=i;
  
 for (i=maxi;i<n-1;i++) a[i]=a[i+1];
    n--;
}
int min(int a[])
{
    int min,i;
    min=a[0];
    for (i=1;i<n;i++)
        if (min>a[i])min=a[i];
    return min;
}
 

void sum(int a[])
{
    int sum1,ave,i;
    sum1=0;
    for (i=0;i<n;i++)sum1+=a[i];
    ave=sum1/n;
    printf("sum=%d,ave=%d/n",sum1,ave);
}
 

 

3. 排序:

#include <stdio.h>
main()
{
    int i,j,t,a[6],n;
    printf("/n/n/nPlease input 6 number:/n");
    n=6;
    for (i=0;i<n;i++)
        scanf("%d",&a[i]);
    for (i=0;i<n-1;i++)
        for (j=i+1;j<n;j++)
            if (a[i]>a[j])
            {
                t=a[i];
                a[i]=a[j];
                a[j]=t;
            }
[GP2]     printf("The sorted numbers are:/n");
    for (i=0;i<n;i++)
        printf("%6d",a[i]);
    printf("/n");
}
4. /* 删除数组中的一个指定元素 */
 

/* 在数组中查找一个给定的数 */
#include <stdio.h>
int main(void)
{
    int i,j, n, x;
    int a[10];   
    n=5;
    printf("Enter 5 integers: ");   /* 提示输入5 个数 */
    for(i = 0; i <n; i++)
        scanf("%d", &a[i]);
    printf("Enter x: ");        /* 提示输入 x */
    scanf("%d", &x);
    /* 在数组a中查找x */
     for(i = 0; a[i]!=x; i++);
     if(i<n)
     {
        for(j=i;j<n-1;j++)
        a[j]=a[j+1];
        n=n-1;
      }
    for(i = 0; i <n; i++)
       printf("%5d", a[i]);
  
      
}   
4.
/*输入一个以回车结束的字符串(少于80个字符),反序后输出*/
#include<stdio.h>
int main(void)
{
    int count, i,j;
    char str[80],c;
 

    /* 输入字符串 */
    printf("Enter a string: ");       /* 输入提示 */
    i = 0;
       count = 0;
    while((str[i] = getchar( )) != '/n')
        i++;
    str[i] = '/0';                    /* 将结束符 '/0' 存入数组 */
    count=i;
    /* 统计字符串中数字字符的个数 */
     printf("count = %d/n", count);
    for(i = 0,j=count-1; i<j; i++,j--)
    {c=str[i];str[i]=str[j];str[j]=c;}
[GP3]      printf("Str=%s/n",str);
}   
5.
/*【例6-11】输入一个以回车结束的字符串(少于80个字符),大写字母加密后输出*/
 

/* 统计字符串中数字字符的个数 */
#include <stdio.h>
int main(void)
{
    int count, i,j;
    char str[80];
    char str2[]="ZXYWVUTSRQPONMLKJIHGFEDCBA";
    /* 输入字符串 */
    printf("Enter a string: ");       /* 输入提示 */
    i = 0;
    while ((str[i] = getchar( )) != '/n')
        i++;
    str[i] = '/0';                    /* 将结束符 '/0' 存入数组 */
    /* 统计字符串中数字字符的个数 */
    count = 0;
    for (i = 0; str[i] != '/0'; i++)  /* 循环条件:数组元素 str[i] 不等于 '/0' */
        if (str[i] >= 'A' && str[i] <= 'Z')
        {
            count=str[i]-'A';
            str[i]=str2[count];
        }
    printf("count=%s/n",str);
    i = 0;
    while ((str[i] = getchar( )) != '/n')
        i++;
    for (j=0; ;j++)
        for (i=0;i<26;i++)
            if (str[j]==str2[i])
                printf("%c",i+'A'[GP4] );
[GP5] }
6.三个数比较大小:
#include <stdio.h>
main()
{
    int a,b,c,min;
    scanf("%d%d%d",&a,&b,&c);
    min=a<b?(a<c?a:c):(b<c?b:c); 
    printf("min=%d/n",min);
}
运行结果:
 

8 9 65
min=8
请按任意键继续. . .
7.顺序结构:
#include <stdio.h>
main()
{
char a;
scanf("%c",&a);
printf("   %c/n",a);
printf("   %c/n",a);
printf("%c%c%c%c%c%c%c/n",a,a,a,a,a,a,a);
printf("   %c/n",a);
printf("%c%c%c%c%c%c%c/n",a,a,a,a,a,a,a);
printf("   %c/n",a);
printf("   %c/n",a);
}
运行结果:
 

 

8
   8
   8
8888888
   8
8888888
   8
   8
请按任意键继续. . .
 

 [GP1]系统暂停函数?

 [GP2]好!

 [GP3]好方法!循环一遍就实现了逆序排列。

 [GP4]不能是‘i’+’A’,即数字i加上字符A

 [GP5]解密过程
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  编程 c ini string numbers mina