关于#c语言#的问题:3、S1~S10输入对应的数字,每输入一个数字显示在前面输入的数字后面

1、上电后数码管从右到左走字显示数字“8”1次,从右到左走字显示小数点“.”1次,用来检测数码管,然后熄灭。
2、矩阵按键S1到S10分别用来输入数字“0到9”,S11用来输入小数点“.”。
3、S1~S10输入对应的数字,每输入一个数字显示在前面输入的数字后面,最多输入8个数字,多余的输入数字无效。
4、还可以使用S11输入小数点,小数点只能输入一次,而且小数点也要随着输入数字移动显示位置。

要求:⑴、要求采用模块化编程,程序编码要求规范
⑵、规范操作外设寄存器:改变其中的某一位或某几位状态时其余位不能改变。
⑶、程序要能在实验板上运行通过

img

img

img

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7710627
  • 除此之外, 这篇博客: C语言带知识点的代码&C语言经典代码&每个程序含一个知识点中的 11、在一个字串s1中查找一子串s2,若存在则返回子串在主串中的起始位置,不存在则返回-1。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    int search(char s1[], char s2[])
    {
    	int i = 0, j, len = strlen(s2);
    	while (s1[i]) 
    	{
    		for (j = 0; j<len;j++)
    		{
    			if (s1[i] != s2[j])
    				break;
    
    			if (j == (len - 1))
    				return i;
    		}
    		i++;
    	}
    	return -1;
    }
    
    int main()
    {
    	char s1[100],s2[100];
    	gets_s(s1);
    	gets_s(s2);
    	printf("%d\n", search(s1, s2));
    	system("pause");
    	return 0;
    }

    运行结果:

我可以!