《C语言及程序设计》程序阅读——字符串数组

返回:贺老师课程教学链接

写出下面程序的运行结果。
(1)

#include <stdio.h>
int main()
{
    int i,c,j=0;
    char s1[2][5]= {"8980","9198"}, s2[5]= {'\0'};
    for (i=3; i>=0 ; i--)
    {
        c=s1[0][i]+s1[1][i]-2*'0';
        s2[i] = (c+j)%10 + '0' ;
        j = (c+j)/10;
    }
    puts(s2);
    return 0;
}

(2)

#include <stdio.h>
int main()
{
    char *a[]= {"Pascal","C Language","dBase","Java"};
    char **p;
    int j ;
    p = a + 3;
    for (j=3; j>=0; j--)
        printf("%s\n",*(p--)) ;
    return 0;
}

(3)

#include<stdio.h>
#include <string.h>
int main()
{
    char str[10][80],c[80];
    int i;
    for(i=0; i<10; i++)
        gets(str[i]);
    strcpy(c,str[0]);
    for(i=1; i<10; i++)
        if(strlen(c)<strlen(str[i]))
            strcpy(c,str[i]);
    puts(c);
    return 0;
}

(4)

#include<stdio.h>
#include <string.h>
#define N 10
int main()
{
    char str[20],s[N][20];
    int i;
    for (i=0; i<N; i++)
        gets(s[i]);
    strcpy(str,s[0]);
    for(i=1; i<N; i++)
        if (strcmp(str, s[i])>0)
            strcpy(str,s[i]);
    printf("The longest string is : \n%s\n",str);
    return 0;
}

(5)

#include <stdio.h>
int main()
{
    char *days[] =
    {
        "Sunday", "Monday", "Tuesday", "Wednesday","Thursday", "Friday", "Saturday"
    };
    int i;
    printf("Work days: ");
    for (i = 1; i < 6; ++i)
        printf("%s ", days[i]);
    printf("\nWeekend: ");
    printf("%s %s\n", days[6], days[0]);
    return 0;
}

(6)

#include<stdio.h>
#include<string.h>
void f(char p[][10],int n);
int main()
{
    char p[][10]= {"China","America","Russia","England","France"};
    int i;
    f(p,5);
    for(i=0; i<5; ++i)
        printf("%s  ", p[i]);
    printf("\n");
    return 0;
}
void f(char p[][10],int n)
{
    char t[10];
    int  i,j;
    for(i=0; i<n-1; i++)
        for(j=i+1; j<n; j++)
            if(strcmp(p[i],p[j])<0)
            {
                strcpy(t,p[i]);
                strcpy(p[i],p[j]);
                strcpy(p[j],t);
            }
}

 

时间: 2024-09-25 15:24:57

《C语言及程序设计》程序阅读——字符串数组的相关文章

《C++语言基础》程序阅读——字符串类的设计

返回:贺老师课程教学链接 阅读下面的程序,领会其中用到的设计方案.技术手段与算法. /* 对于要定义的字符串类CMyString, 数据成员包括: - 字符串的长度: - 指向字符串第一个字符的指针 成员函数包括: - 不带参数的构造函数: - 带一个类型为const char *类型的参数(用于对字符串初始化)的构造函数: - 带一个const CMyString&类型的复制构造参数: - 析构函数: - Strlen函数 (用于求字符串的长度): - int Find(char c) (找出

C语言及程序设计提高例程-16 数组的引入

贺老师教学链接  C语言及程序设计提高 本课讲解 引子:求5位同学的平均成绩 #include <stdio.h> int main( ) { int a1, a2, a3, a4, a5; int total=0, ave; scanf("%d %d %d %d %d", &a1,&a2,&a3,&a4,&a5); total+=a1; total+=a2; total+=a3; total+=a4; total+=a5; ave=

C语言及程序设计提高例程-24 数组名作为函数参数

贺老师教学链接  C语言及程序设计提高 本课讲解 用数组元素作函数实参 #include <stdio.h> int gcd(int m,int n) { int r; while(r=m%n) { m=n; n=r; } return n; } int main() { int i; int a[8]= {26,1007,956,705,574,371,416,517}; int b[8]= {994,631,772,201,262,763,1000,781}; int c[8]; for(

《C语言及程序设计》程序阅读——字符数组与字符串处理

返回:贺老师课程教学链接 阅读下面的程序,说出输出结果.与此同时,从一些程序中,学习处理问题的方法.对于理解不了的程序,请通过单步执行的方法进行观察,达到学会的目的.这一讲涉及的文字处理,是计算机应用广泛的一个领域,相关的方法,应该要学会. (1) #include <stdio.h> int main( ) { char b[]="ADCEBADEFG"; char *chp=&b[9]; while(--chp>&b[2]) putchar(*ch

《C语言及程序设计》程序阅读——一维数组初步

返回:贺老师课程教学链接 阅读下面的程序,学会使用数组.若感觉太小儿科的题目,可以直接跳过.不过,要是阅读困难,还是要老老实实地对照运行结果,以及借助单步调试的工具,搞清求值并显示的过程.(1) #include<stdio.h> int main() { int a [6]= {2,-3,4,-6,-8,10}, i; for (i=0; i<6; i++) { if(a[i]<0) continue; printf("%d ", a[i]); } print

《C++语言基础》程序阅读——二进制文件及文件的随机读写

返回:贺老师课程教学链接 1.阅读并运行下面的两个程序,分别用记事本和二进制文件阅读器(请自行下载Binary Viewer等程序,或者用DOS中的Debug程序,并百度其用法).查看其内容,并理解文件存储的原理. (1) #include <iostream> #include <fstream> #include <cstdlib> using namespace std; int main( ) { int a; ofstream outfile("f1

《C++语言基础》程序阅读——标准输入输出对象及文本文件

返回:贺老师课程教学链接 1.阅读并运行下面的示例程序,掌握标准输入输出流的控制 例1 #include <iostream> #include <math.h> using namespace std; int main() { float a,b,c,disc; cout<<"please input a,b,c:"; cin>>a>>b>>c; if (a==0) cerr<<"a is

《C语言及程序设计》实践项目——数组与指针

返回:贺老师课程教学链接 [项目1-翻转数组] 下面的程序的输出为10 9 8 7 6 5 4 3 2 1.也就是说,调用reverse(b,10);后,b数组中的元素正好"翻转"过来了.请定义reverse函数,实现这个功能. int main( ) { int b[10]= {1,2,3,4,5,6,7,8,9,10}; int i; reverse(b,10); //将b数组中的元素逆序翻转过来 for(i=0; i<10; i++) printf("%d &qu

《C++语言基础》程序阅读——异常处理和命名空间

返回:贺老师课程教学链接 阅读下面的程序,写出输出结果 (1) #include <iostream > using namespace std; int a[10]= {1,2, 3, 4, 5, 6, 7, 8, 9, 10}; int fun( int i); int main() { int i ,s=0; for( i=0; i<=10; i++) { try { s=s+fun(i); } catch(int) { cout<<"数组下标越界!"