冒泡排序,判断回文,以及12-24小时制

6-7 定义函数,完成冒泡排序算法。

本题定义一个冒泡排序算法的函数,调用函数后实现数组的升序排序,其数组长度为任意长度。

函数接口定义:

在这里描述函数接口。例如: void sort(int arr[],int n);

在这里解释接口参数。例如:其中 arr 是用户传入的参数 ,n 表示数组的长度。 函数实现对数组arr的排序。

裁判测试程序样例:

在这里给出函数被调用进行测试的例子。例如: 

在这里给出函数被调用进行测试的例子。例如:
#include <stdio.h>

void sort(int arr[],int n);

int main(void) {
    int n;
    scanf("%d",&n);
    int arr[n];
    for (int i = 0; i < n; ++i) {
        scanf("%d",&arr[i]);
    }
    //排序
    bubble_sort(arr,n);
    //输出
    for (int i = 0; i < n; ++i) {
        printf("%d ",arr[i]);
    }

}
/* 请在这里填写答案 */

输入样例:

在这里给出一组输入。例如:

5 1 3 6 2 9

输出样例:

在这里给出相应的输出。例如:

1 2 3 6 9 

其实冒泡排序跟公式一样,大家只要理解他的思路就好啦 

#include<stdio.h>
void sort(int arr[],int n)
{
    int i,t=0,j,change=1;
    for(i=0;i<n&&change==1;i++)
    {
        change=0;      //这个可以减少循环次数
        for(j=0;j<n-i-1;j++) //这个判断条件很关键
        {
          if(arr[j]>arr[j+1])
          {
            t=arr[j];
            arr[j]=arr[j+1];
            arr[j+1]=t;
            change=1;
          }
        }
    }
}

 

6-30 判断回文

如果一串字符从左至右读和从右至左读相同,那么这串字符就是回文(Palindrome)。例如,ABCBA是回文,而ABCD则不是。本题要求编写一个判断字符串是否为回文的函数,并且通过函数参数获取字符串的中间字符(如果中间是两个字符,则获取靠左的那一个,例如字符串是ABCDEF,则中间字符是C)。题目保证输入的字符串长度在1至2000之间且不含空格、换行等分隔符。

函数接口定义:

其中 str 和 pch 都是用户传入的参数。 str 是字符串的首地址; pch 是传入的要存放字符串中间字符的变量的地址。如果字符串是回文,函数须返1,否则返回0。

裁判测试程序样例:

/* 测试程序仅为示例,实际的测试程序可能不同 */
#include <stdio.h>
#include <string.h>
#define MAXLENGTH 100
int isPalindrome(const char* str, char* pch);
int main(){
    char str[MAXLENGTH],mid;
    scanf("%s",str);
    if(isPalindrome(str, &mid))
        printf("是回文!中间字符是%c\n",mid);
    else
        printf("不是回文!中间字符是%c\n",mid);
    return 0;
}

/* 你编写的函数代码将被嵌在这里 */

输入样例:

ABCDACBC

输出样例:

不是回文!中间字符是D

 

#include<stdio.h>
#include<string.h>
#define MAXLEGTH 100
int isPalindrome(const char* str, char* pch)
{
    int i,j;
    for(i=0,j=strlen(str)-1;i<j;i++,j--)
    {
        if(str[i]!=str[j])
            break;
    }
    if(i>=j)   //如果没有遇见break语句那么i>=j
    {
        if(i==j)  //说明是原字符串长度为奇数
            *pch=*(str+i);
        else
            *pch=*(str+j);
        return 1;
    }
    else
    {
        if(strlen(str)%2==0)
            *pch=*(str+strlen(str)/2-1);
        else
            *pch=*(str+strlen(str)/2);
        return 0;
    }
}

 

7-7 12-24小时制

编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间。

输入格式:

输入在一行中给出带有中间的:符号(半角的冒号)的24小时制的时间,如12:34表示12点34分。当小时或分钟数小于10时,均没有前导的零,如5:6表示5点零6分。

提示:scanf的格式字符串中加入:,让scanf来处理这个冒号。

输出格式:

在一行中输出这个时间对应的12小时制的时间,数字部分格式与输入的相同,然后跟上空格,再跟上表示上午的字符串AM或表示下午的字符串PM。如5:6 PM表示下午5点零6分。注意,在英文的习惯中,中午12点被认为是下午,所以24小时制的12:00就是12小时制的12:0 PM;而0点被认为是第二天的时间,所以是0:0 AM

输入样例:

21:11

输出样例:

9:11 PM

相信很多人第一眼看见这个题就已经有思路了,这个题目就是考虑的条件有点多,大家细心点就好。 

#include<stdio.h>
int main()
{
    int a,b,c=0;
    char m;
    scanf("%d",&a);
    scanf("%c",&m);
    scanf("%d",&b);
    if(a>=12)
    {
        if(a==12)
        {printf("%d",a);}
        else
        {
        a=a-12;
        printf("%d",a);
        }
        c=1;
    }
    else
    {
        printf("%d",a);
        c=0;
    }
    if(b/10==0)
    {
        printf(":");
        printf("%1d ",b);
    }
     else
     {
         printf(":");
         printf("%d ",b);
     }
     if(c)
     {printf("PM");}
     else
     {printf("AM");}
}

 欢迎大家积极留言呀!

相关推荐

  1. 冒泡排序判断以及12-24小时

    2024-02-17 02:12:01       31 阅读
  2. C#:24小时12小时之间的转换

    2024-02-17 02:12:01       15 阅读
  3. 【C语言】6-5 判断字符串 分数 20

    2024-02-17 02:12:01       39 阅读
  4. 判断-蓝桥

    2024-02-17 02:12:01       40 阅读
  5. 判断字符串—C语言

    2024-02-17 02:12:01       42 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-17 02:12:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-17 02:12:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-17 02:12:01       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-17 02:12:01       20 阅读

热门阅读

  1. C++:迭代器的封装思想

    2024-02-17 02:12:01       25 阅读
  2. js 解构赋值

    2024-02-17 02:12:01       34 阅读
  3. 字节跳动CEO梁汝波:要逃逸平庸的重力

    2024-02-17 02:12:01       22 阅读
  4. Rust中打印语句为什么使用宏实现?

    2024-02-17 02:12:01       32 阅读
  5. LevelDB源码阅读笔记(0、下载编译leveldb)

    2024-02-17 02:12:01       33 阅读
  6. socket编程

    2024-02-17 02:12:01       31 阅读